1、long 和 C里面的 long long 一致
2、布尔是boolean
3、char占两个字节
4、默认整型类型为int,浮点数类型为double
5.1定义long,数字后面要加上l或者L,例:long a = 100l / 100L;
5.2定义float,数字后面要加上f或者F,例:float a = 1.123f / 1.123F;
6、更大范围的数据类型可以转化为更小范围的,反之不可以,例:double a = 1.123F;
7、.123 与 0.123等价
8、比较两个小数时,由于二进制的除法精度问题,如8.1 / 3 会返回一个接近2.7的小数,因此应当判断两小数之差的绝对值是否在某个精度范围内。
9、boolean类型只能存放true、false,不能用0或者非0数字代替
10.1、混合数据类型运算时,系统会将所以变量自动转成对应的容量最大的数据类型,反之会报错,比如int a = 1.1
(bool、short)、char之间相互不会自动转换
左边可以向右边任意转化
10.2 byte、short、char三者可以计算,但需要转化为int
10.3 boolean不参与转换
10.4 表达式结果的数据类型会自动转化成,表达式中最大的数据类型
11.1、任意数据类型转化成String 只用加个"",例:String a = 100 + "";
11.2、String转化成其它数据类型则是xxx.parsexx(String s), xxx和xx第一个字母要大写
11.3、String转化成char则是s.charAt(x),x表示字符串的第几个字符,下标从0开始
12、关系运算符instanceof
13、复合赋值运算符会进行类型转换,如byte a = 3; a += 3; [等价于a = (byte)(a + 3);]
14、a % b的本质是 a - (int)a / b * b,当有小数参与时,得到是近似值