Java基本数据类和其包装类型之间的比较
Java的数据类型分为两种:基本数据类型、引用数据类型
文章目录
1、基本数据类型(8种)
- 整数类型 byte short int long
- 浮点数类型 float double
- 字符类型 char
- 浮点数类型 boolean
2、引用数据类型(3种)
- 数组
- 类
- 接口
3、基本数据类型的包装类型
Byte Short Integer Long
Float Double
Character
Boolean
4、基本数据类型之间的赋值和比较
- 如果不加对应的标识符的赋值,整数的默认值是int,浮点数是double
注意:给byte和short赋值,编译器会自动判断其是否符合其范围
byte a1 = 128; //报错
byte a2 = 127; //不报错
a1++; //不报错 ++符号会先判断会不会溢出
a1=a1+1; //报错 因为这里不会自动判断,a1是变量,byte类型的变量加一个整型可能会溢出,所以报错(short同理)
long b = 154; //不报错 因为int可以隐式转为long
long b = 2200000000 //报错 因为22亿超过了int的取值范围
5、基本数据类型及其包装类型之间的比较(这里以int和Integer为例)
int i1 = 127;
int i2 = 128;
Integer i3 = 127;
Integer i4 = 127;
Integer i5 = 128;
Integer i6 = 128;
Integer i7 = new Integer(127);
System.out.println(i1==i3);//true
System.out.println(i3==i7);//false
System.out.println(i1==i7);//true
System.out.println(i3==i4);//true
System.out.println(i2==i5);//true
System.out.println(i5==i6);//false
6、总结
- 基本数据类型和谁比较,比较的都是值
- 包装类型都有一个缓冲区,在缓冲区内的比较的都是值(除了new出来的);超过缓冲区大小包装类型都会创建一个新的对象