目录
运算符是用于执行程序中变量和值之间计算的特殊符号。它们可以用来进行数学计算、比较值、逻辑运算等。
一、算术运算符
用于执行基本的数学运算
操作符 | 描述 | |
---|---|---|
+ | 加法 | |
- | 减法 | |
* | 乘法 | |
/ | 除法 | |
% | 取余 |
int a = 10;
int b = 5;
int sum = a + b; // 加法,sum 现在是 15
int difference = a - b; // 减法,difference 现在是 5
int product = a * b; // 乘法,product 现在是 50
int quotient = a / b; // 除法,quotient 现在是 2
int remainder = a % b; // 取余,remainder 现在是 0
二、关系运算符
用于比较两个值,并返回一个布尔结果(true或false)。
运算符 | 描述 | |
---|---|---|
== | 检查如果两个操作数的值是否相等,如果相等则条件为真。 | |
!= | 检查如果两个操作数的值是否相等,如果值不相等则条件为真。 | |
> | 检查左操作数的值是否大于右操作数的值,如果是那么条件为真。 | |
< | 检查左操作数的值是否小于右操作数的值,如果是那么条件为真。 | |
>= | 检查左操作数的值是否大于或等于右操作数的值,如果是那么条件为真。 | |
<= | 检查左操作数的值是否小于或等于右操作数的值,如果是那么条件为真。 |
int x = 10;
int y = 20;
boolean isGreater = x > y; // false,因为10不大于20
boolean isLess = x < y; // true,因为10小于20
boolean isEqual = x == y; // false,因为10不等于20
boolean isNotEqual = x != y; // true,因为10不等于20
三、逻辑运算符
用于组合多个布尔表达式,并返回一个布尔结果。
操作符 | 描述 | |
---|---|---|
&& | 称为逻辑与运算符。当且仅当两个操作数都为真,条件才为真。 | |
| | | 称为逻辑或操作符。如果任何两个操作数任何一个为真,条件为真。 | |
! | 称为逻辑非运算符。用来反转操作数的逻辑状态。如果条件为true,则逻辑非运算符将得到false。 |
boolean isHot = true;
boolean isSunny = true;
boolean isSummer = isHot && isSunny; // 逻辑与,isSummer 是 true
boolean isNotWinter = !isHot || isSunny; // 逻辑或和非,isNotWinter 是 true
四、赋值运算符
用于将值赋给变量
操作符 | 描述 | 例子 |
---|---|---|
= | 简单的赋值运算符,将右操作数的值赋给左侧操作数 | C = A + B将把A + B得到的值赋给C |
+ = | 加和赋值操作符,它把左操作数和右操作数相加赋值给左操作数 | C + = A等价于C = C + A |
- = | 减和赋值操作符,它把左操作数和右操作数相减赋值给左操作数 | C - = A等价于C = C - A |
* = | 乘和赋值操作符,它把左操作数和右操作数相乘赋值给左操作数 | C * = A等价于C = C * A |
/ = | 除和赋值操作符,它把左操作数和右操作数相除赋值给左操作数 | C / = A,C 与 A 同类型时等价于 C = C / A |
(%)= | 取模和赋值操作符,它把左操作数和右操作数取模后赋值给左操作数 | C%= A等价于C = C%A |
int c = 5; // 将5赋值给变量c
c += 3; // 等同于 c = c + 3,c 现在是 8
c -= 2; // 等同于 c = c - 2,c 现在是 6
c *= 4; // 等同于 c = c * 4,c 现在是 24
五、自增和自减运算符
用于增加或减少变量的值。
前缀自增自减法(++a,--a): 先进行自增或者自减运算
后缀自增自减法(a++,a--): 先进行表达式运算,再进行自增或者自减运算
int a = 5;//定义一个变量;
int b = 5;
int x = 2*++a;
int y = 2*b++;
// 自增运算符前缀运算后a=6,x=12
System.out.println("自增运算符前缀运算后a="+a+",x="+x);
// 自增运算符后缀运算后b=6,y=10
System.out.println("自增运算符后缀运算后b="+b+",y="+y);