一.基本数据类型
java中有8种基本数据类型,包括6种数字型,一种字符型,一种布尔型。其中6种数字型包括4种整型两种浮点型。它们分别是:byte,short,int,long,float,double,boolean,char,它们所占用的字节数分别为1、2、4、8、4、8、1、2。(12484812,按上述顺序更加顺口,方便记忆)
二.基本数据类型简述
byte
- byte 数据类型是8位、有符号的,以二进制补码表示的整数
- 默认值是 0
- 特点是占用内存小,节约空间, byte 变量占用的空间只有 int 类型的四分之一
short
- short 数据类型是 16 位、有符号的以二进制补码表示的整数
- 默认值是0
- short类型同byte一样节省空间, short变量是int型变量所占空间的二分之一
int
- int 数据类型是32位、有符号的以二进制补码表示的整数
- 一般地整型变量默认为 int 类型
- 默认值是0
long
- long 数据类型是 64 位、有符号的以二进制补码表示的整数
- 这种类型主要使用在需要比较大整数的系统上
- 默认值是0L
float
- float 数据类型是单精度、32位的浮点数
- float 在储存大型浮点数组的时候可节省内存空间
- 默认值是 0.0f
- 浮点数不能用来表示精确的值,如货币(会产生误差)
double
- double 数据类型是双精度、64 位的浮点数
- 浮点数的默认类型为double类型
- 默认值是 0.0d
boolean
- boolean数据类型表示一位的信息
- 只有两个取值:true 和 false
- 这种类型只作为一种标志来记录 true/false 情况
- 默认值是 false
char
- char类型是一个单一的 16 位 Unicode 字符
- 最小值是 \u0000(即为0)
- 最大值是 \uffff(即为65,535)
- char 数据类型可以储存任何字符
三.数据类型的转换
数据类型转换必须满足如下规则:
-
不能对boolean类型进行类型转换。
-
不能把对象类型转换成不相关类的对象。
-
在把容量大的类型转换为容量小的类型时必须使用强制类型转换。
-
转换过程中可能导致溢出或损失精度
自动类型转换
必须满足转换前的数据类型的位数要低于转换后的数据类型,例如: short数据类型的位数为16位, 就可以自动转换位数为32的int类型,同样float数据类型的位数为32,可以自动转换为64位的double类型。
强制类型转换
-
条件是转换的数据类型必须是兼容的。
-
格式:(type)value, type是要强制类型转换后的数据类型
隐含强制类型转换
-
整数的默认类型是 int。
-
浮点型不存在这种情况,因为在定义 float 类型时必须在数字后面跟上 F 或者 f。
相关考题
int n=2147483647;
long m=2L;
n+=m
n=?
答案是 -2147483647
解:n+=m,数据类型仍为int,此时溢出,得到结果 10000000 00000000 00000000 00000001,取反码+1后为正解。