1 运算符
1.1 算数运算符
运算符 | 含义 |
---|---|
+ | 求和 |
- | 相减 |
* | 乘积 |
/ | 商 |
% | 取余 |
++ | 自增 |
– | 自减 |
注意:先乘除 后加减 先算小括号里 再算括号外
package com.kz.SE;
public class Demo01 {
public static void main(String[] args) {
//乘
int a = 52;
int b = 25;
int c = a * b;
System.out.println(c);//1300
//除
int c1 = a / b;//在Java中除法 取商
//在Java中除的结果都是整数
System.out.println(c1);//2
//取余 %
int c2 = a % b;
System.out.println(c2);//2
//先算乘除 再算加减
int c3 = a + a * b;
System.out.println(c3);//1352
//加小括号
int c4 = (a + a) * b;
System.out.println(c4);//2600
}
}
1.2 自增 自减
目的: 一个变量 自身加一或减一
说明:
变量++: 先执行在自加一
--变量: 先减一在执行
案例:
package com.SE.kz_test;
public class Job {
public static void main(String[] args) {
int i = 5;
int a = -(i++);
System.out.println(a);//-5
System.out.println(i);//6
int a1 = 6;
int i1 = 6;
a1 = i1++ + i1-- + i1++;//先运算然后再加1
System.out.println(a1);//19
System.out.println(i1);//7
int a2 = 6;
int i2 = 6;
a2 = ++i2 +(++i2) + (--i2);
System.out.println(a2);//22
}
}
1.3 关系运算符
运算符 含义 > 大于 < 小于 >= 大于等于 <= 小于等于 == 是否相等 != 是否不相等
package com.SE.kz_test;
public class Test {
public static void main(String[] args) {
boolean num = 4 > 6;
System.out.println(num);//false
boolean num1 = (9 > 3);
System.out.println(num1);//true
boolean num2 = 3 >= 5;
System.out.println(num2);//false
boolean num3 = 5 != 6;
System.out.println(num3);//true
boolean num4 = 4 == 4;
System.out.println(num4);//tru3
}
}
1.4 逻辑运算符
说明: 返回的是一个布尔值的数据类型
运算符 | 含义 |
---|---|
&& (常用) | 短路与 |
|| (常用) | 短路或 |
! | 逻辑非 |
| (不常用) | 逻辑或 |
& (不常用) | 逻辑与 |
1.4.1与运算
&& : 条件一 && 条件二
条件1和条件2都为true的时候整体的结果才为true。只要条件1或者条件2有一个为false的话,就整体为false
比喻:好比登录微信 账户需要正确 密码也需要正确
boolean flog = 3 > 4 && 5 < 6;
//false && true
System.out.println(flog);//false
boolean flog1 = (4 > 3) && (2 > 1);
System.out.println(flog1);//true
boolean flog2 = (7 > 4) && (2 > 0) && (8 < 9);
System.out.println(flog2);//true
1.4.2或运算
|| : 条件一 || 条件二
条件1和条件2都为false的时候,才整体为false,如果有一个为true,整体就为true
比喻:就好比回家 我没带钥匙 但我媳妇带了
boolean flog = 3 > 4 || 5 > 3;
System.out.println(flog);//true
boolean flog1 = 5 < 3 || 7 < 2 || 9 > 12;
//false || false || false
System.out.println(flog1);//false
1.3.3非
! : !条件
条件为true的话,整体返回false 条件为false的话,整体就是返回true
比喻:反着来 对着来
boolean num = !(5>6);
System.out.println(num);//true
1.4.4开发中不常用运算符
^ : 异或 两个相同的为0,想异为1
<< : 左移 用来将一个数的各二进制位全部左移位,右补0
>> : 右移 将一个数的各二进制右移N位,移到右端的低位被舍弃,对于无符号数,高位补0
1.5 逻辑运算符的短路原则
逻辑运算符的短路原则:
1.逻辑或短路:
只要一个为真,或结果就为真,后面的不再执行。
2.逻辑与短路:只要有一个为假,结果就为假。如果&&左边的算式结果为假,那么右边的不再运行,直接得出结果为假。
作用: 提高执行效率
package com.kz.SE;
public class Demo01 {
public static void main(String[] args) {
//逻辑与的短路原则
int num = 10;
boolean flog = (3 < 2) && (num++ > 15);
System.out.println(flog);//false
System.out.println(num);//10
//逻辑或的短路原则
int num1 = 10;
boolean flog1 = (3 >2) || (++num1 > 10);
System.out.println(flog1);//true
System.out.println(num1);//10
//逻辑与的时候只要遇到第一个false的时候,后面的表达式就不再执行了
boolean flog2 = (3 > 2) && (++num > 100) && (--num1 > 90);
System.out.println(flog2);//false
System.out.println(num);//11
System.out.println(num1);//10
}
}