**
1.赋值运算符
=
将 = 右边的值或者最终值赋值给=左边的变量
**
2.算数运算符
+ - * / %
/: 3/2 -> 1
3.0/2 -> 1.5
表达式中每一个单独的参与者类型会向其中最大类型转换
%: 3%2 -> 1
+= -= *= /=
1 + 1
int i = 1;
int j = 2;
i = i + j;
i += j; --- 累加器、计数器
单目算术运算符
++ --
int i = 1;
i++; 运算结束之后,再将 i + 1 ,然后复制给i
int j = 5;
i++ + j
++i; 参与运算的时候,先将 i + 1 ,然后复制给i
++i + j
在使用的时候,前++ 加1,后++ 不加1,用完都加1
**
3.关系运算符
> < >= <= == !=
**
4.逻辑运算符
&& || ! & |
and or 反
&& | || | & | | | ! |
---|---|---|---|---|
判断两边的表达式是否同时满足 | 判断两边的表达式任一个是否满足 | 判断两边的表达式是否同时满足 | 判断两边的表达式任一个是否满足 | 将表达式结果直接取反 |
如果发生短路,第二个表达式不执行 | 如果发生短路,第二个表达式不执行 | 表达式都需要去做判断 | 表达式都需要去做判断 | 先算表达式结果,再取反 |
两边都为真,结果为真,否则为假 | 两边都为假,即为假,否则为真 | 两边都为真,结果为真,否则为假 | 两边都为假,即为假,否则为真 | 表达式结果取反 |
**
5.三目运算
表达式1 ? 表达式2 : 表达式3
判断表达式1 的结果,如果为真,执行表达式2,否则,执行表达式3
表达式1 必须是有 boolean 类型返回值的表达式
表达式1 ? 表达式2 : 表达式3 ? 表达式4 : 表达式5
**
6.位运算(二进制)
<< >> <<< >>>
**
7.点运算
. 优先级最高
**
8.运算符优先级
. > 算数 > 关系 > 逻辑 > 赋值
()提升优先级
**
9.分支结构
反映现实生活中的各种选择,也叫选择结构
3.1 if 分支
3.1.1 单分支结构
if(条件){
}
int i = 0;
if(i > 0){
i++;
}
System.out.print(i);
**
3.1.2 双分支结构
**
if(){
}else{
}
int i = 0;
if(i == 0){
System.out.print(“哈哈”);
System.out.print(i);
}else{
System.out.print(“嘚嘚~”);
System.out.print(i);
}
System.out.print(i);
**
3.1.3 多分支结构
if(){
}else if(){
}else if(){
}else{
}
int i = 0 ;
if(i > 0){
System.out.print(“哈哈”);
}else if(i < 0){
System.out.print(“WTF”);
}else{
System.out.print(“算了吧~”);
}
int score = 90;
90+
80+
70+
60+
60-
原则:按照条件满足可能性由大到小使用if
**
3.1.4 嵌套分支
if(){
if(){
}else if(){
}else{
}
}else if(){
}else{
}
原则:一般嵌套不会超过三次!!!