Java语言是强类型语言,对于每一种数据都定义了明确的具体数据类型,在内存总分配了不同大小的内存空间
Java中主要有8中基本数据类型,六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。分别是:byte short int long float double char boolean.
Java中所有的基本数据类型都有固定的存储范围和所占内存空间的大小,而不受具体操作系统的影响,来保证Java程序的可移植性。整形数据默认为int数据类型,浮点型默认为double数据类型,如果要表示long型数据或float型数据,要在相应的数值后面加上l、L或f、F,否则会出现编译问题。
类型 | 占用存储空间 | 表述范围 |
byte | 1字节 | -128至127 |
short | 2字节 | -2^15 至 2^15 – 1 |
int | 4字节 | -2^31 至 2^31 – 1 |
long | 5字节 | -2^63 至 2^63 -1 |
float | 4字节 | -3.403E38 至 3.403E38 |
double | 8字节 | -1.78E308 至 1.798E308 |
boolean:数据值只有true或false,适用于逻辑计算。
char:char型(字符型)数据在内存中占用2个字节。char型数据用来表示通常意义上的字符,每个字符占2个字节,Java字符采用Unicode编码,它的前128字节编码与ASCII兼容字符的存储范围在\u0000~\uFFFF,在定义字符型的数据时候要注意加' ',比如 '1'表示字符'1'而不是数值1。
基本数据类型间的转换
1、boolean类型不能转换成任何其他数据类型。
2、自动类型转换:容量小的数据类型可以自动转换成容量大的数据类型
byte,short,char—int—long—float—double
byte,short,char相互之间补转换,他们参与运算首先转换为int类型
3、强制类型转换:容量大的数据类型转换成容量小的数据类型时,要加上强制转换符,但这样有可能会造成精度降低或者数据溢出,要小心。
转换公式:目标类型 变量名=(目标类型)(被转换的数据)