-
char类型
转义字符:反斜杠\在Java语言中具有转义功能。 -
整数类型
1)java语言当中的整数型字面值有三种表示方式:
第一种方式:十进制
第二种方式:八进制【以0开始】
第三种方式:十六进制【以0x开始】
用System.out.println输出时,统一输出为十进制。
2)- 小容量转大容量
小容量可直接转换成大容量数据类型。如:long x = 456;整数类型456自动转换成长整数long类型。
long z = 2147483648;编译错误,2147483648被当作int类型4个字节处理,但这个字面值超出int类型范围。解决:long z = 2147483648L;
- 大容量转小容量
大容量转换成小容量数据类型,编译时会报错。需要进行强制类型转换,加上强制类型转换符后编译通过,但是运行时可能会损失精度。如:byte b = 128;编译错误,128这个int型的字面值超过byte类型的取值范围,不能直接赋值给byte类型的变量。若没超过byte类型的取值范围,则可以直接赋值(对byte类型的优待)。
3)当一个整数字面值没有超出byte、short、char的取值范围,这个字面值可以直接赋值给byte、short、char类型的变量。 这种机制是SUN允许的,目的是为了方便程序员的编程。
4)计算机在任何情况下底层表示和存储数据的时候都采用补码的形式。 -
浮点类型
在java语言当中,所有的浮点型字面值,默认被当作double类型来处理,要想该字面值当作float类型来处理,需要在字面值后面添加F/f。
如:float f = 5.1; //编译错误,大容量不能直接转为小容量
解决:float f = (float)5.1;或者float f = 5.1f;
【扩展】
java程序中SUN提供了一套庞大的类库,java程序员是基于这套基础的类库来进行开发的。
java的SE类库字节码:…\Java\jdk1.7.0_75\jre\lib\rt.jar
Java的SE类库源码:…\Java\jdk1.7.0_75\src.zip
-
布尔类型
在java语言当中boolean类型只有两个值:true、false。布尔类型在实际开发中,经常使用在逻辑运算和条件控制语句当中。 -
关于基本数据类型直接的互相转换
1)八种基本数据类型当中除布尔类型之外,剩下的7种类型之间都可以相互转换。
2)小容量向大容量转换,称为自动类型转换。各数据类型容量从小到大排序:
byte<short=char<int<long<float<double
注意:任何浮点类型不管占用多少个字节,都比整数型容量大。 char和short可表示的种类数量相同,但是char可以取更大的正整数。
3)大容量转换为小容量,叫做强制类型转换。转换时需要加强制类型转换符,程序才能编译通过,但是运行阶段可能会损失精度,所以谨慎使用。
4)当整数字面值没有超出byte、short、char的取值范围,可以直接赋值给byte、short、char类型的变量。
5)byte、short、char混合运算时,各自先自动转换成int类型再做运算。
6)多种数据类型混合运算,先转换成容量最大的那种类型再做运算。