java语言共提供了8种基本数据类型,分别是byte,short,int,long,float,double,char,boolean这几种。
从储存的内容来看,这些基本数据类型可以分成整数型,浮点型,字符型,布尔型这种
整数型
byte:
byte类型的数据在内存中占用1个字节即8位
默认值:0
byte是占用内存最少的整型数据类型,适当使用可节省内存空间
short:
short类型的数据在内存中占用2个字节即16位
默认值:0
和byte类型一样,short类型的数据对内存的占用也很少。
int:
int类型的数据在内存中占用4个字节即8位
默认值:0
int类型是整数型数据类型中使用最多的,而在java中整型数据的计算结果默认都是int型的
long:
long类型的数据在内存中占用8个字节即64位
默认值:0L
long类型是整数型数据类型中取值范围最广的,这意味着用long类型可以储存一些值比较的的数据
注:
①整数型数据计算结果默认是int类型,因此两个整数的计算结果默认是int,将计算结果复制给除了int类型之外的整数型变量是要注意,且java中两个整数作商仍为整数。
②给long类型变量赋值时需要加上后缀l或L,建议用L,因为l与1容易混淆。
浮点型
float:
float类型在内存中占用4个字节即32位
默认值:0.0f(f不能漏)
float类型并不能十分准确地表示一个数据
double
double类型的数据在内存中占用8个字节即64位
默认值:0.0
java中浮点型数据计算结果默认是double类型的
和float类型一样,double类型并不能十分进·准确地表示一个数据
注
①java中浮点型数据莫真是·默认是double型的,而double型的数据不能赋值给float的变量,因此给float类型数据赋值浮点型数据是需要在数据末尾处加上f或F
②对于一个以科学计数法表示的浮点数 a.a1a2a3a4...*b^c , a.a1a2.a3.a4...为尾数,b为底数,c位指数。而在内存中,浮点型数据是这丫昂储存的:一位符号位,若干位用于存放指数,若干位用于存放尾数。
③float类型数据的储存方式:1位符号位,8位存放指数,23位存放尾数;double类型数据的储存方式:1位符号位,11位存放指数,52位存放尾数。对比int类型(有31位存放尾数)和long类型(有63位存放尾数),浮点型的数据类型精确度低于整数型数据类型。
字符型
char:
char类型的数据在内存中占用2个字节即16位(注意和c/c++区分)
char类型数据采用的是Unicode编码,Unicode编码是ASCII码的超集,其中包含有大量各国的文字和符号
布尔型
boolean
boolean类型数字在内存中占用1个字节即8位
默认值:false
boolean类型的数据只有true和false这两种数据类型
与c/c++的布尔型的区别:
①c/c++中布尔型使用的关键字为bool,而java中则是boolean
②c/c++中布尔型本质是整型数据,0为false,非0为true,而java中不能将整形数据赋值给boolean类型的变量