10
200
2
10
++,- -运算符
当++、- -出现在变量之前,先**自加、自减1**,再**做赋值运算**
public class User {
public static void main(String[] args) {
int a = 10;
int b = ++a;
System.out.println(a);// 11
System.out.println(b);// 11
}
}
当++,- -出现在变量之后,先**做赋值运算**,再**自加、自减1**
public class User {
public static void main(String[] args) {
int a = 10;
int b = a++;
System.out.println(b);// 10
System.out.println(a);// 11
}
}
扩展
+运算符有两个作用
①求和
public class User {
public static void main(String[] args) {
System.out.println(3 + 4);// 7
}
}
②字符串拼接
public class User {
public static void main(String[] args) {
System.out.println(“Hello” + “Java” + “World”);// HelloJavaWorld
}
}
## 关系运算符
| 运算符 | 描述 | 结果 |
| --- | --- | --- |
| == | 判断值是否相等 | 是返回true,不是返回false |
| != | 判断值是否不相等 | 是返回trut,不是返回false |
| >= | 判断左边的值是否大于等于右边 | 是返回true,不是返回false |
| <= | 判断左边的值是否小于等于右边 | 是返回true,不是返回false |
| > | 判断左边的值是否大于右边 | 是返回true,不是返回false |
| < | 判断左边的值是否小于右边 | 是返回true,不是返回false |
public class User {
public static void main(String[] args) {
int a = 20;
int b = 10;
System.out.println(a == b);
System.out.println(a != b);
System.out.println(a > b);
System.out.println(a < b);
System.out.println(a <= b);
System.out.println(a >= b);
}
}
false
true
true
false
false
true
## 逻辑运算符
| 运算符 | 描述 | 结果 |
| --- | --- | --- |
| & | 与 | 两边都为True,结果才为True |
| │ | 或 | 有一边为True,结果就为True |
| ! | 非 | 真值变假,假值变真 |
| && | 逻辑与 | 两边都为True,结果才为True |
| ││ | 逻辑或 | 有一边为True,结果就为True |
public class User {
public static void main(String[] args) {
boolean a1 = true;
boolean a2 = false;
System.out.println(a1 && a2);
System.out.println(a1 || a2);
System.out.println(!a1);
}
}
false
true
false
**与&和逻辑与&&**
public class User {
public static void main(String[] args) {
// 与&
int a = 0;
int b = 1;
// 当左边表达式为false,右边的表达式依旧会执行
System.out.println(a > b & b > a++);// false
System.out.println(a); // 1
// 逻辑与&&
int c = 0;
int d = 1;
// 当左边的表达式为false,右边的表达式不执行(短路现象)
System.out.println(c > d && d > c++);// false
System.out.println(c); // 0
}
}
**或|和逻辑或||**
public class User {
public static void main(String[] args) {
// 或|
int a = 0;
int b = 1;
// 当左边表达式为true,右边的表达式依旧会执行
System.out.println(a < b | b > a++);// true
System.out.println(a); // 1
// 逻辑或||
int c = 0;
int d = 1;
// 当左边的表达式为true,右边的表达式不执行(短路现象)
System.out.println(c < d || d > c++);// true
System.out.println(c); // 0
}
}
**总结**
与&和或|要对所有条件都进行判断(无论左边是真假,右边都会执行)
逻辑与 &&当左边的表达式为false,右边的表达式不执行
逻辑或 || 当左边的表达式为true,右边的表达式不执行
**什么时候使用&&,什么时候使用&**
从效率方面来说,&&比&的效率高一些。
因为与&不管第一个表达式结果是什么,第二个表达式一定会执行。
大部分情况下都建议使用短路与&&,只有当既需要左边表达式执行,又需要右边表达式执行的时候,才会选择与&。
## 赋值运算符
| 运算符 | 描述 |
| --- | --- |
| = | 直接赋值 |
| += | 加后赋值 |
| -= | 减后赋值 |
| \*= | 乘后赋值 |
| /= | 除后赋值 |
| %= | 取模后赋值 |
public class User {
public static void main(String[] args) {
int a = 2;
int b = 1;
System.out.println(a += b);//a = a + b
System.out.println(a -= b);//a = a - b
System.out.println(a *= b);//a = a * b
System.out.println(a /= b);//a = a / b
System.out.println(a %= b);//a = a % b
}
最后
不知道你们用的什么环境,我一般都是用的Python3.6环境和pycharm解释器,没有软件,或者没有资料,没人解答问题,都可以免费领取(包括今天的代码),过几天我还会做个视频教程出来,有需要也可以领取~
给大家准备的学习资料包括但不限于:
Python 环境、pycharm编辑器/永久激活/翻译插件
python 零基础视频教程
Python 界面开发实战教程
Python 爬虫实战教程
Python 数据分析实战教程
python 游戏开发实战教程
Python 电子书100本
Python 学习路线规划
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!