Java中数据类型分为:
1、基本数据类型
2、引用数据类型
我们先来说说基本数据类型!
Java中基本数据类型分为4类8种
整型 byte、short、int、long
浮点型 float、double
字符型 char
布尔类型 boolean
整型
按照存储范围大小排序:byte < short < int < long
注意:我们在声明一个整形类型的变量并赋值的时候,如果右侧赋值的时候是整数,那么该整数的默认类型为int
举例:
long a = 12345678909;
// 会报错,因为右侧的数值已经超过了int的取值范围,如果想继续赋值的话,应该在数值后面加上l或L,或者使用强制转换
浮点型
1、float
2、double
注意:我们在声明一个浮点型类型的变量并赋值的时候,如果右侧赋值的时候是小数,那么该整数的默认类型为double
举例:
float a = 4.56;
//会出现报错,因为右侧4.56是double类型,在Java中取值范围大的类型不能直接给取值范围小的类型赋值
解决办法:
方案1、在4.56后面加上f或者F
方案2、强制转换,float a = (float)4.56;
注意:一般使用第一种解决方案
字符型
char
在Java中,字符类型一次只能存放一个值,并且使用英文单引号引起来
举例:
char c = 'a'; // 变量c中存贮的就是字符a
字符类型取值范围[0,65535],占2个字节
下面的字符对应的ASCII值建议可以背几个
注意:切记字符只能使用单引号,而且只能存放一个值,否则就不是字符或报错了!
布尔类型
Java中布尔类型只有两个值:true/flase
基本数据类型数据转换
1、自动类型转换
当取值范围小的数据类型赋给取值范围大的数据类型,则构成自动类型转换,也叫做隐式类型转换
2、强制类型转换
当取值范围大的数据类型赋值给取值范围小的数据类型,则需要进行强制类型转换,也叫显式类型转换,
但是这种转换方式可能会存在精度误差,不会进行四舍五入
数据类型转换注意事项
1、除了boolean数据类型以外,剩余7种数据类型之间是可以相互转换的
2、当对byte、short、char数据类型赋值时,如果没有超出当前数据类型取值范围,则是可以直接赋值
举例:
byte b = 127; // 可以赋值
byte b = 128;// 赋值失败
3、当byte、short、char数据类型进行运算时,则先转为int类型,然后再进行计算
4、当多种数据类型进行混合运算时,结果为当前运算中取值范围大的数据类型
举例:
byte b = 1;
int a = 300;
double d = 5.6;
System.out.println(a+b+d); // 则运算结果为double类型