运算符和表达式
运算符:对常量或者变量进行操作的符号
表达式:用运算符把常量或者变量连接起来符合java语法的式子就可以称为表达式。不同运算符连接的表达式体现的是不同类型的表达式。
举例说明:
int a = 10;
int b = 20;
int c = a + b;
+:是运算符,并且是算术运算符
a + b:是表达式,由于+是算术运算符,所以这个表达式叫算术表达式。
字符数拼接操作
当 + 操作中,遇到了字符串,这时 + 就是字符串连接符,而不是算术运算。
自增自减运算符
符号 | 作用 | 说明 |
++ | 自增 | 变量自身的值加1 |
-- | 自减 | 变量自身的值减1 |
自增自减运算符有两种使用方式:
单独使用
++ 和 -- 无论是放在变量的前边还是后边,结果是一样的
参与操作使用
如果放在变量的后边,先将该变量原本的值,取出来参与操作,随后再进行自增(++),自减(--)。
int a = 10;
int b = a++;
如果放在变量的前边,变量先完成自增长, 然后再参与运算。
int a = 10;
int b = ++a;
++ 、-- 只能操作变量,不能操作常量
赋值运算符
符号 | 作用 | 说明 |
= | 赋值 | a=10,将10赋值给变量a |
+= | 加后赋值 | a+=b,将a + b的值给a |
-= | 减后赋值 | a-=b,将a - b的值给a |
*= | 乘后赋值 | a*=b,将a × b的值给a |
/= | 除后赋值 | a/=b,将a ÷ b的商给a |
扩展的赋值运算符隐含了强制类型转换
赋值运算符的优先级最低,所有运算中它最后运算
关系运算符
关系运算符的结果都是boolean类型,要么是true,要么是false。
千万不要把 == 误写成 =
逻辑运算符
代码层面:连接布尔类型的表达式,或者是值
理解层面:逻辑运算符,可以用来整合多个条件, 为一段整体的逻辑
逻辑与 &,无论左边 true false,右边都要执行。
短路与 &&,如果左边为 true,右边执行;如果左边为 false,右边不执行
逻辑或 |,无论左边 true false,右边都要执行。
短路或 ||,如果左边为 false,右边执行;如果左边为 true,右边不执行
最常用的逻辑运算符:&& || !
三元运算符
格式:判断条件 ? 值1 : 值2;
执行流程:
首先计算判断条件的值
如果值为true,值1就是运算结果
如果值为false,值2就是运算结果
运算符的优先级