基本类型 | 大小 (字节) | 默认值 | 封装类 |
---|---|---|---|
byte | 1 | (byte)0 | Byte |
short | 2 | (short)0 | Short |
int | 4 | 0 | Interger |
long | 8 | 0L | Long |
float | 4 | 0.0f | Float |
double | 8 | 0.0 | Double |
char | 2 | 0 | Character |
boolean | 不确定 | false | Boolean |
在java规范中,并没有规定boolean类型的大小,不过在jvm规范中,指出boolean编译后单独使用占4字节,创建数组类型中使用占1字节。
区别:
1,基本数据类型是值传递,封装类是引用传递
2,基本数据类型初始值如:int=0,而封装类Integer=null
3,集合中添加的元素一定是封装类引用数据类型
4,基本数据类型是存放在栈中的,而封装类是存放于堆中的
5,基本数据类型的好处就是速度快(不涉及到对象的构造和回收),封装类的目的主要是更好的处理数据之间的转换,方法很多(像Integer类型有转换进制的方法,字符串和数字之前转换的方法),用起来也方便。