数据类型的转换
1.自动转换
范围小的类型可以自动转换(赋值给)为范围大的类型
范围小的类型(遇到)范围大的类型,自动转为范围大的
整数<小数
“最大的是字符串”:任何类型遇到字符串都自动转换为字符串
例如:
System.out.println(""+10+1); //101
System.out.println(10+""+1); //101
System.out.println(10+1+""); //11
char<int
java默认使用Unicode编码(Unicode兼容于ASCII)
例如:
System.out.println('杨'+0); //26472
System.out.println('a'+0); //97
2.强制转换
范围大的赋值给范围小的,必须强转
通用写法:
范围小 = (小类型)范围大
特殊:
float x = 123.4f
建议:符号两端预留空格
算术运算符
1 | + - * / |
逻辑运算符
!:不等于
两个符号:根据真值表判断(短路特性)
&& ||
一个符号:一切都会判断
& |
i++: 先用后加
++i: 先加后用
整数 = += 有内置转换器
例如:
b2 += b1; //有内置转换器,类型不同会自动转换
b2 = b2 + b1; //没有内置转换器,类型不同会报错
byte,short特殊情况:
byte = byte + byte ; ×
byte += byte ; √
三目运算符:
x = 布尔判断 ? 为真时返回 : 为假时返回 ;