子曰:学而时习之,不亦乐乎。
boolean(布尔型) byte(字节型) char(字节型) short(短整型) int(整型) long(长整型) float(浮点型) double(双精度浮点型)
对应的封装类分别是:
Boolean Byte Character Short Integer Long Float Double
基本数据类型对应的占用的内存空间及其取值范围:
取值范围解析:我们知道每一位内存空间只可以存两个数0和1,我们拿byte举例,byte占用1个字节内存空间,也就是8位内存控件,
每一位内存空间可以有两种变化,所以有2的8次方种变化,也就是说可以有256种变化,正数和负数各一半,所以负数有128个数,
正数和零加起来有128个数,所以byte的取值范围是-2^8到2^8-1,也就是-127到128。
基本数据类型 占用内存 取值范围
boolean 1位 true/false
byte 8位 -128 - 127
char 16位 /u0000-/uffff
short 16位 -2^(16-1) 到 2^(16-1)-1
int 32位 -2^(32-1) 到 2^(32-1)-1
long 64位 -2^(64-1) 到 2^(64-1)-1
float 32位
double 64位
基本数据类型和封装类的区别和联系
1.封装类需要涉及到对象的实例化和回收,效率相比基本数据类型要低。
2.封装类可以表达出未赋值的和值为0的区别,基本数据类型则无法表达出未赋值的情况。
3.封装类实现了很多对基本数据类型的操作的工具方法,易用性要比基本数据类型要好。
4.封装类的对象的引用放在栈里面,对象的实例放在堆里面。而基本数据类型是成员变量的时候放在堆里面,是局部变量的时候放在栈里面(方法栈)。