-
1.温故而知新
-
整形
-
byte 1字节 8位 short 2字节 16位 int 4字节 32位 long 8字节 64位
-
内存存储时 X符号位 byte X0000000 short X0000000 00000000 int X0000000 00000000 00000000 long X0000000 00000000 00000000 00000000
-
long longNum = 10000L;//l或者L
-
查看源码最大值:
-
int intNum2 = Integer.MAX_VALUE;
-
short short2 = Short.MAX_VALUE;
-
-
-
浮点型
-
//表示形式 float floatNum1 = 1.23f; float floatNum2 = 1.23F; float floatNum3 = 0.4F; float floatNum4 = .4F; double douNum1 = 1.35;
-
System.out.println(0.1+0.2);//0.3000000000000004 //对于浮点数的运算,会存在精度丢失(先转化为二进制在计算)
-
//解决方案:1.将浮点型转换成字符串型 2.提高数位 3.不使用float和double(BigDecimal)
-
-
char 字符型
-
ASCII Unicode 十进制 转义字符 十六进制
-
char char4 = '\u0061';//a
-
-
-
2.数据类型转换
-
自动类型转换(隐式)
-
int num = 'a';//97 double num2 = 10;//10.0
-
不同的数据类型进行混合运算时,会将数据类型转换成大的
-
-
强制类型转换
-
(数据类型)数据,有可能造成精度丢失, int num3 = (int) 2.3; System.out.println(num3);
-
溢出,不兼容的类型: 从int转换到byte可能会有损失 byte byte1 = (byte)200; System.out.println(byte1);//-56
-
提升数据类型 int douNum = 10; int douNum1 = 20; System.out.println((double)douNum1*douNum);//200.0
-
-
字符串类型转换
-
任意数据类型的数据与String类型进行“+”运算时,结果一定是String类型
-
-
-
3.操作符
-
算术运算符
-
//ASCII运算 System.out.println('2' + '3');//101
-
字符串“+”运算,发生拼接
-
System.out.println(20 + '4');//72 System.out.println(20 + "45");//2045 System.out.println("45" + 20);//4520
-
-
关系运算符/比较
-
关系运算符的结果是boolean值
-
int num4 = 97; char char1 = 'a'; == 内部进行了隐式类型转换 System.out.println(num4 == char1);//true
-
-