Java的基本数据类型和类型转换规则
大体上可以分为数值型和非数值型
数值型又可以分为
1 整数型
byte(字节型):-128到127(多了数据就会溢出)默认值为0b
(实际上就是二进制,逢二进一,举个简单例子
0000 0000(第一个0为符号位)二进制
1000 0000代表-128也就是0-128
0111 1111代表1+2+4+8+16+32+64=127(正数))
short:16位:-2^15到2^15-1 默认值为0s
int(整型,默认):32位 默认值为0
long(建议以L结尾):64位 默认值为0L
2 浮点数型
float:必须以f结尾(精度是7位) 默认值为0.0f
double(默认使用): 默认值为0.0
非数值型可以分为
字符型char:默认值为u000,一个字符用单引号包裹
(常见:0对应数值48,字符A对应数值65,字符a对应字符97,char输出的全是字母代替数字)
布尔型boolean:true和flase。默认值为flase
常用的非基本类型string:"一串字符“默认值为null
类型转换的规则(很重要)
大类型接收小类型,会默认类型转换成大类型
小类型接收大类型,需要强制类型转换,否则会报错。
不同类型进行运算时,会转默认类型化为大类型(double和int相加转化超过精度时会四舍五入,即丢失精度)
double大于int,int和char可以互转(据说是开发者给自己设置的便利)
下一篇:
JAVA基本数据类型及转换规则