运算符是志宏执行特定额数学或者逻辑操作的符号
- 算数运算符
- +
- -
- *
- /
- % 取余运算符
- ++ 自增运算符
- 注意:a++ 和 ++a的区别
- a++先处理其他运算再自增运算
- ++a 先自增运算再处理其他运算
- -- 自减运算符
- 关系运算符
- ==
- !=
- >
- <
- >=
- <=
- 逻辑运算符
- && 逻辑与运算符 全部为真才为真,否则为假
- || 逻辑或运算符,任意为真则结果为真
- ! 逻辑非运算符。逆转操作
- 位运算符
- &
- |
- ^
- ~
- <<
- >>
- 赋值运算符
- = 赋值运算符
- += 加且赋值运算符
- -= 减且赋值运算符
- *= 乘且赋值运算符
- /= 除且赋值运算符
- %= 求余且赋值运算符
- <<= 左移且赋值运算符
- >>= 右移且赋值运算符
- &= 按位与且赋值运算符
- ^= 按位异或且赋值运算符
- |= 按位或且赋值运算符
- 其他运算符
- sizeof() 返回类型的大小
- typeof() 返回class的类型
- & 返回变量的地址 &a 表示a的地址
- * 变量的指针 *a 表示a的指针
- ?: 条件表达式
- is 判断对象是否为某一类型
- as 强制转换类型
- 运算符的优先级
类别 | 运算符 | 结合性 |
后缀 | ()[]-> ++ -- | 从左到右 |
一元 | +- ! ~ ++ -- * & sizeof | 从右到左 |
乘除余 | */ % | 从左到右 |
加减 | + - | 从左到右 |
移位 | << >> | 从左到右 |
关系 | <<= >>= | 从左到右 |
相等与不等 | == != | 从左到右 |
位与AND | & | 从左到右 |
位异或XOR | ^ | 从左到右 |
位或OR | | | 从左到右 |
逻辑与 AND | && | 从左到右 |
逻辑或OR | || | 从左到右 |
条件 | ?: | 从右到左 |
赋值 | = += -= /= %= >>= <<== &= ^= |= | 从右到左 |