Skip to main content

Operators

短路与或

  • &&:第一个操作数为假不再向后运算
  • ||:第一个操作数为真不再向后运算

移位符

有符号右移>>:最高位补符号位 左操作数 int/long, 右操作数 mod32/mod64

e.g. int a >> 33 即 int a >> 1

无符号右移>>>:最高位补 0

字符串连接

+: 左右操作数 String 字符串/其他类型(自动被转化为 String)

判断

==:

  • 基本类型值相等, 引用类型引用相等
  • 基本类型: 转换后比较; boolean 型不与 int 型比较
  • 引用类型: 指向两个不同对象实例的变量不相等;若判断两个对象实例内容是否相等, 必须调用 equals()方法

强制类型转换

()

  • 只能在继承层次内进行强制类型转换(同一家族)
  • 将父类转换为子类前, 应使用 instanceof 运算符进行检查

表达式

  • 整数提升:算术运算前 byte,short,char 提升为 int
  • 没有","运算符和表达式语句