1.基础数据类型:
1).整型注意点:
a.整型的默认类型是int型;
b.如果把一个较小的,在byte或short类型表数范围的值直接赋给一个byte或者short变量,系统会自动把这个整数值当成byte或者short类型处理;
例如:
//系统会把56当初byte类型,但如果是float f = 5.6;就会报错
byte a = 56;
c.所有数字在计算机底层都是以二级制存在,计算机以补码保存所有的整数,补码计算规则:正数的补码和原码完全相同;
负数的补码是其反码+1;
反码是对原码按位取反,最高位(符号位)不变;
2).浮点型注意点:
a.浮点数的默认类型是double类型;
2.基本类型的类型转换:自动/强制
1).自动类型转换:箭头左边的数值类型可以自动类型转换为箭头右边的数值类型:
int a = 6;
//int类型可以自动转换为float类型
float f = a;
byte b = 9;
//出错,因为byte类型不能自动转换为char类型
char c = b;
2).强制类型转换注意点:
a.强制类型转换可能造成溢出;b.不能把浮点数直接赋值给float类型(注意整数是可以把小的直接赋给小类型的):
/直接把5.6赋值给float类型出错,因为5.6默认是double类型
float a = 5.6;
3)表达式类型的自动提升:
a.所有的byte,short,char类型将被提升到int类型;b.整个算数表达式的数据类型自动提升到与表达式中最高等级操作数同样的类型;
short s = 5;
//表达式中的s会自动提升到int类型,整个表达式的类型是int类型,赋值给short类型会报错
s = s - 2;
3.直接量
直接量是指在程序中通过源代码直接给出的值三种类型:基本类型,字符串和null类型;