Operators
短路与或
- &&:第一个操作数为假不再向后运算
- ||:第一个操作数为真不再向后运算
移位符
有符号右移>>:最高位补符号位 左操作数 int/long, 右操作数 mod32/mod64
e.g. int a >> 33 即 int a >> 1
无符号右移>>>:最高位补 0
字符串连接
+: 左右操作数 String 字符串/其他类型(自动被转化为 String)
判断
==:
- 基本类型值相等, 引用类型引用相等
- 基本类型: 转换后比较; boolean 型不与 int 型比较
- 引用类型: 指向两个不同对象实例的变量不相等;若判断两个对象实例内容是否相等, 必须调用 equals()方法
强制类型转换
()
- 只能在继承层次内进行强制类型转换(同一家族)
- 将父类转换为子类前, 应使用 instanceof 运算符进行检查
表达式
- 整数提升:算术运算前 byte,short,char 提升为 int
- 没有","运算符和表达式语句