流程控制语句
算术运算符 告诉程序执行特定的运算或者逻辑操作的符号
算术运算符 数值类型的常量、变量的运算操作
注意:
先乘除后加减
注意模运算的正负
尽量避免使用小数进行运算
+、-可以表示正负值
a++、a--先运算再自加自减
++a、--a先自加自减再运算
a+=b表示a=a+b
a-=b表示a=a-b
a%=b表示a=a%b(模运算)
a**=b表示a的b次方(幂运算)
赋值运算符
左移赋值符
a = 9 , b = 2
a<<= b表示a左移b位
同理右移赋值符
字符串运算符
用于连接两个字符串
比较运算符 对两个数值或者变量进行比较时,其结果为布尔值 true或者false
不相同的类型的数据进行比较时,首先会自动将其转换为相同的类型再进行比较
==和!=表示只比较数据的值是否相等
===和!==表示还要比较数据类型是否相等
>=和<=表示大于等于和小于等于
逻辑运算符 常用于布尔型的数据进行比较
当操作数为布尔值时,返回的值也是布尔值
挡操作数不是布尔值时,&&、||的返回值就是一个特定的操作数的值
运算符 | 运算 | 示例 | 结果 |
&& | 与 | a&&b | 一0为0 |
|| | 或 | a||b | 一真为真 |
! | 非 | !a | a为false,结果为true否则相反 |
三元运算符
需要三个操作数的运算符,结果根据给定的条件决定
条件表达式?表达式1:表达式2
位运算符
按位与 &
按位或 |
按位非 ~
按位异或 ^
运算符的优先级
自上而下递减
优先级 | 运算符 | 说明 | 结合性 |
---|---|---|---|
1 | [] 、. 、() | 字段访问、数组索引、函数调用和表达式分组 | 从左向右 |
2 | ++ -- -~!delete new typeof void | 一元运算符、返回数据类型、对象创建、未定 义的值 | 从右向左 |
3 | *、/、% | 相乘、相除、求余数 | 从左向右 |
4 | +、- | 相加、相减、字符串串联 | 从左向右 |
5 | <<、>>、>>> | 左位移、右位移、无符号右移 | 从左向右 |
6 | <、<=、>、>=、instanceof | 小于、小于或等于、大于、大于或等于、是否 为特定类的实例 | 从左向右 |
7 | ==、!=、===、!== | 相等、不相等、全等,不全等 | 从左向右 |
8 | & | 按位“与” | 从左向右 |
9 | ^ | 按位“异或” | 从左向右 |
10 | | | 按位“或” | 从左向右 |
11 | && | 短路与(逻辑“与”) | 从左向右 |
12 | || | 短路或(逻辑“或”) | 从左向右 |
13 | ?: | 条件运算符 | 从右向左 |
14 | =、+=、-=、*=、/=、%=、&=、|=、^=、<、<=、>、>=、>>= | 混合赋值运算符 | 从右向左 |
15 | , | 多个计算 | 按优先级计算,然后从右向左 |