Java数据类型拓展
整数面试题
以byte为例子 整数范围为 -128~~127
byte a=128 //字符溢出,程序报错
int b=(byte)128; //用int类型来接收强转为byte类型的128
int b=(byte)129;
System.out.println(b)
输出结果为
-128
-127
当字符溢出时会反向取值
那么相应的其他整数类型也是这样的!!!
整数拓展
进制
二进制0b
十进制
八进制0
十六进制0x
int i =10;
int i1=010; //八进制
int i2=0x10; //十六进制
输出结果:
10
8
16
浮点拓展
浮点数会产生舍入偏差,所以尽量完全避免用浮点数做比较
float a=0.1f;
double b=0.1;
System.out.println(a==b);
输出结果为:
false
在必须要用浮点数进行比较时可以用BigDecimal 数学工具类;
字符拓展
所有的字符在本质上还是数字
Unicode编码 占两个字节 65536 2的16次方
ASCLL码
在Unicode表中每个字符都会有相应的数字
转义 \
转义字符:
\t 制表符
\n 换行符