Java中什么是算术运算符_Java加减乘除运算规则解析

Java算术运算符含+、−、*、/、%五种,支持数值计算与字符串拼接(仅+),整数除法截断小数,%余数符号同被除数,++/--分前置后置影响求值顺序。

Java中的算术运算符是进行基本数学计算的符号,包括加(+)、减(−)、乘(*)、除(/)、取模(%)五种基础运算符。它们作用于数值类型(如int、double等),参与表达式求值,是Java编程最常用、最底层的运算工具。

加法与减法:支持数字和字符串的双重语义

加法运算符+既能做数值相加,也能拼接字符串:

  • 两个整数相加:int sum = 5 + 3; → 结果为8
  • 字符串拼接:String s = "Hello" + "World"; → 结果为"HelloWorld"
  • 混合使用时,从左到右计算,遇到字符串即转为拼接:"Age: " + 25 + 5"Age: 255"(不是30)

减法仅用于数值运算,不支持字符串,且必须保证操作数为数字类型。

乘法与除法:整数除法会截断小数,不四舍五入

乘法*和除法/行为直观,但除法需特别注意数据类型:

  • 10 / 3(两个int)→ 结果是3,小数部分被直接丢弃
  • 10.0 / 310 / 3.0(任一为浮点)→ 结果是3.3333333333333335
  • 除数为0会导致运行时异常:int x = 5 / 0;抛出ArithmeticException

取模运算符%:只适用于整数类型,余数符号跟随被除数

取模%返回两数相除后的余数,常用于判断奇偶、循环索引、分组等场景:

  • 10 % 31
  • -10 % 3-1(余数符号与被除数-10一致)
  • 10 % -31(Java中模运算的除数符号不影响结果符号)
  • 0 % n(n≠0)恒为0n % 0同样抛出异常

自增自减:前置与后置影响表达式求值顺序

虽然严格意义上属于“一元”算术运算符,但++--在实际开发中高频出现,需明确其执行时机:

  • a++(后置):先用原值参与运算,再自增。例如int b = a++;,若a原为5,则b得5,a变为6
  • ++a(前置):先自增,再用新值参与运算。例如int c = ++a;,若a原为5,则a先变6,c得6
  • 避免在复杂表达式中混用(如x++ + ++x),虽可算出结果,但可读性差、易出错,生产代码应规避