JAVA 运算符(+ - * / %)

运算符

在Java中,算术运算符用于执行常见的数学运算。
以下是Java中的主要算术运算符及其详细介绍:

1. 加法运算符(+)

用于两个操作数的加法。如果两个操作数都是数字,则执行数学加法;如果有一个操作数是字符串,则执行字符串连接。

int a = 10;
int b = 5;
int sum = a + b; // sum = 15

String str1 = "Hello";
String str2 = "World";
String result = str1 + " " + str2; // result = "Hello World"

2. 减法运算符(-)

用于两个操作数的减法,返回第一个操作数减去第二个操作数的结果。

int a = 10;
int b = 5;
int difference = a - b; // difference = 5

3. 乘法运算符(*)

用于两个操作数的乘法。

int a = 10;
int b = 5;
int product = a * b; // product = 50

4. 除法运算符(/)

用于两个操作数的除法。需要注意整数除法会丢弃小数部分,而浮点数除法会保留小数部分。

int a = 10;
int b = 5;
int quotient = a / b; // quotient = 2

double x = 10.0;
double y = 4.0;
double result = x / y; // result = 2.5

5. 取模运算符(%)

用于两个操作数的取模运算,返回第一个操作数除以第二个操作数的余数。

int a = 10;
int b = 3;
int remainder = a % b; // remainder = 1

6. 递增运算符(++)

用于将操作数的值增加1。可以放在操作数的前面(前缀递增)或后面(后缀递增)。

int a = 10;
int b = ++a; // 前缀递增:先递增,后赋值,a = 11, b = 11

int x = 10;
int y = x++; // 后缀递增:先赋值,后递增,x = 11, y = 10

7. 递减运算符(–)

用于将操作数的值减少1。可以放在操作数的前面(前缀递减)或后面(后缀递减)。

int a = 10;
int b = --a; // 前缀递减:先递减,后赋值,a = 9, b = 9

int x = 10;
int y = x--; // 后缀递减:先赋值,后递减,x = 9, y = 10

8. 结合使用运算符

算术运算符可以结合赋值运算符一起使用,这些操作符称为复合赋值运算符。
加法赋值运算符(+=)

int a = 10;
a += 5; // 等价于 a = a + 5,结果 a = 15

减法赋值运算符(-=)

int a = 10;
a -= 5; // 等价于 a = a - 5,结果 a = 5

乘法赋值运算符(*=)

int a = 10;
a *= 5; // 等价于 a = a * 5,结果 a = 50

除法赋值运算符(/=)

int a = 10;
a /= 5; // 等价于 a = a / 5,结果 a = 2

取模赋值运算符(%=)

int a = 10;
a %= 3; // 等价于 a = a % 3,结果 a = 1

9. 运算符优先级

在复杂表达式中,算术运算符有优先级,优先级从高到低依次是:递增/递减、乘法/除法/取模、加法/减法。可以使用括号来明确表达式的计算顺序。

int result = 10 + 5 * 2; // 结果 20,因为乘法优先于加法
int resultWithParentheses = (10 + 5) * 2; // 结果 30,因为括号中的表达式先计算

复杂例子展示

public class Main {
    public static void main(String[] args) {
        int a = 5;
        int b = 10;
        int c = 3;
        int d = 2;
        int e = 4;

        // 复杂表达式
        int result = (a + b * c - d / e) % c + (++a * b--) - d;

        // 详细解释
        // 1. 递增和递减操作:++a 和 b--
        // 2. 乘法和除法操作:b * c 和 d / e
        // 3. 加法和减法操作:a + (b * c) 和 - (d / e)
        // 4. 取模操作:(a + (b * c) - (d / e)) % c
        // 5. 剩余的加法和减法操作:(... % c) + (++a * b--) 和 - d
  System.out.println("Result: " + result); // 输出结果
    }
}

初始值:
a = 5
b = 10
c = 3
d = 2
e = 4
计算乘法和除法:
b * c = 10 * 3 = 30
d / e = 2 / 4 = 0(整数除法)
计算加法和减法:
a + b * c = 5 + 30 = 35
35 - d / e = 35 - 0 = 35
取模操作:
35 % c = 35 % 3 = 2
递增和递减操作:
++a = 6(a从5变为6)
b-- = 10(b从10变为9,但先用10进行计算)
计算剩余的部分:
2 + (++a * b–) = 2 + (6 * 10) = 2 + 60 = 62
62 - d = 62 - 2 = 60
所以,正确的结果应该是 60。

总结

Java中的算术运算符用于执行基本的数学运算,包括加法、减法、乘法、除法和取模等。理解这些运算符的用法和优先级有助于编写正确和高效的代码。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值