基本类型浅显总结

231 阅读1分钟

学习别人总结记录,比较浅,可能会有问题,欢迎指正。

8种基本类型

  • 整型 byte/short/int/long,字节数1/2/4/8个
  • 浮点型 float单精度,double双精度,字节数4/8个,符号位1/1位,指数位8/11位,小数位23/52位,十进制小数位7/16位
  • 字符型 char,字节数2个,无符号位,最大65535
  • 布尔型 boolean,true/false

计算规则

  • 大类型到小类型需要强制转换,小类型转大类型自动转换,整型会缓存[-128, 127]的值
  • 字面量整型默认int
  • 字面量小数默认double
  • a+b 计算完会转成a和b中大的类型
  • 整数型和浮点型计算结果会转成浮点型
  • 字面量会隐式转换,所以不需要强制转换,如byte a = 10;但是字面量值不能超出byte的范围。
  • b+=1; 会自动转成b的类型
  • short、byte、char运算结果会自动转成int,所以short、byte、char的运算结果至少用int或浮点型接收
  • char接收整型,需要强制转换

位运算(二进制运算)

  • 位与&:位都是1为1,否则为0
  • 位或|:位都为0位0,否则为1
  • 异或(不进位运算)^ :相同为0,不同为1

哪些会编译报错

short a = 128;
byte b = 128;
short c = a+b;
short d = a+=b;
double e = 10;
int f = e/10;
double g = a+b;
char h = a;