书写注释是一个非常好的习惯
单行注释 //双斜杠
多行注释
2.关键字
所有标识符都以(A-Z或a-z)、美元符($)、下划线(_)开始
首字母之后可以是任意组合
不能用关键字作为变量名或者方法名
标识符是大小写敏感的
可以用中文命名,但是很low。。不规范
3.数据类型
强类型语言:要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用。——安全性高 速度慢
弱类型语言:JS、VB。
1.数值类型
- 整数类型
byte 占1个字节范围:-128~127
short 占2个字节范围:-32768~32767
int 占4个字节范围: 负21亿~21亿
long 占8个字节范围:巨大
- 浮点类型
float 占4个字节——同int占4个字节
double 占8个字节(double使用的比较多)——同long int占8个字节
- 字符类型 char 占两个字节
2.Boolean类型 占1位,只有true和false两个值。
位(bit):是计算机内部数据存储的最小单位,10010011是一个八位二进制数。
1Byte表示一个字节 1B=8b
1024B=1KB
1024KB=1M
1024M=1G
- 浮点数拓展
//最好完全避免使用浮点数进行比较,可以使用BigDecimal 数学工具类进行比较。
float f=0.1f; // 0.1
double d=1.0/10; //0.1
System.out.println(f==d); //false
float d1=232323323232323f;
float d2=d1+1;
System.out.println(d1==d2);// true
- 字符拓展
所有的字符本质还是数字
char c1='a';
char c2='中';;
System.out.println((int)c1);//强制转换
System.out.println(c1);
System.out.println((int)c2);//强制转换
System.out.println(c1);
输出:
97
a
20013
a
- 布尔值扩展
boolean flag=true;
if(flag==true){}//新手
if(flag){};//老手
less is more 代码要精简易读 以上两种相同
4.类型转换
由于Java是强类型语言,所以运算中,不同类型的数据先转化为同一类型,然后进行运算。
类型转换由低-----------------------------高
byte,short,char-->int-->long-->float-->double(小数的优先级大于整数)
强制转换 (类型)变量名 高--低 public static void main(String[] args) {
int i=128;
byte b=(byte)i; //内存溢出
//强制转换 (类型)变量名
System.out.println(i);
System.out.println(b);
输出128
-128
自动转换 低--高
int i=128;
double c=i;
System.out.println(c);
输出: 128
128.0
注意点:1.不能对Boolean值转换。
2.不能把对象的类型转换为不相干的类型 。
3.在高容量转换到低容量的时候,强制转换。
4.转换的时候可能存在内存溢出,以及精度问题。
public static void main(String[] args) {
//操作比较大的数的时候,注意溢出问题
//JDK7新特性,数字之间可以用下划线分割
int money=10_0000_0000;
int years=20;
int total=years*money;//-1474836480,计算的时候溢出了。
long total2=years*money;// 由于默认是int,转换为lnog之前已经出问题了。
long total3 =(long)years*money; // OK
System.out.println(total);
System.out.println(total2);
System.out.println(total3);
-1474836480
-1474836480
20000000000
注意:L l 都可以表示long,但是最好用大写L,小写l容易看成1。



