目录
一:关于java中的数据类型
1.基本数据类型
2.引用数据类型
二:基本数据类型
第一类:整数型
Byte,short,int,long
第二类:浮点型
Float,double
第三类:布尔型
Boolean
第四类:字符型
Char
基本数据类型 | 占用空间大小【单位:字节】 |
Byte | 1 |
Short | 2 |
Int | 4 |
Long | 8 |
Char | 2 |
Float | 4 |
Double | 8 |
Boolean | 1 |
三:引用数据类型
1.类
2.接口
3.数组
四:注意
1.关于java中的数字类型,数字都是有正负之分的,所以在数字的二进制当中有一个二进制位被称为“符号位”。 并且这个“符号位”在所有二进制的最左边。0表示正数,1表示负数。
2.String是java.lang.String包下的一个类,也就是引用类型中的类类型(因为它是一个类)。在Java中java.lang.* 下的所有包都是自动引入的。
3.java没有任何无符号形式的int,long,short或byte型的数据。
五:八中数据类型之间的转换关系,转换规则
1.八中数据类型当中除了布尔类型之外剩余七中都可以相互转换。
2.小容量向大容量转换,称之为自动类型转换
byte<short<int<long<float<double
注意:任何浮点型不管占多少个字节,都比整型容量大。
char和short平级,但是char可以去更大的正整数。
3.容量大的向小的转换,称之为强制类型转换,需要加强制类型转换符,编译会通过,但是可能会损失精度。
4.当整数的字面值没有超过byte,short,char的取值范围时,可以直接赋值给byte,short,char的类型变量。
5.byte,short,char混合运算时,各自先转换成int类型再做运算。
6.多种数据类型混合运算时,先转换成最大容量的类型再进行运算。
public class DataTypeTest03 {
public static void main(String[] args) {
char c=97;
System.out.print(c);
long g =10;
// 此时编译错误,编译器只检测语法是否错误。 g=10是long整型,然后int,byte强制类型转换,
// 但是和int类型的3做运算,会先变成整型,再和3运算,最后得到的是int型,
// 得到int的结果赋值给byte型,从大向小容量转,需要强制类型转换。
byte b =(byte)(int)g/3;
short i=15;
byte j =7;
short h =i+j; // i+j,会先转换成int类型,然后再进行运算。
}
}