数据类型
1. 整数进制
- 二进制0b
- 十进制
- 八进制0
- 十六进制0x
2. 浮点型
float f = 0.1f; // 有限 离散 舍入误差 大约 接近但不等于
double d = 1.0/10;
f == d //false
原因:因为不论是float 还是double都是浮点数,而计算机是二进制的,浮点数会失去一定的精确度。
注:根本原因是:十进制值通常没有完全相同的二进制表示形式;十进制数的二进制表示形式可能不精确。只能无限接近于那个值
结论:浮点型float对数据会进行大约计算,所以尽量不使用浮点型进行比较。可以使用 BigDecimal(数学工具类)
3.字符型
字符型的本质还是数字,按照编码对应他们的字符。
转义字符
4.内存引起的区别
String sa = new String("yigezifuchuan");
String sb = new String("yigezifuchuan");
sa == sb; //false
类型转换
优先级
低-->高(自动转换)
高-->低(强制转换)