算术运算符中+,-,*,/,%属于二元运算符,二元运算符指的是需要两个操作数才能完成运算的运算符。其中的%是取模运算符,就是我们常说的求余数操作。
二元运算符的运算规则:
整数运算:
1. 如果两个操作数有一个为Long, 则结果也为long。
2. 没有long时,结果为int。即使操作数全为short,byte,结果也是int。
浮点运算:
3. 如果两个操作数有一个为double,则结果为double。
4. 只有两个操作数都是float,则结果才为float。
取模运算:
1.其操作数可以为浮点数,一般使用整数,结果是“余数”,“余数”符号和左边操作数相同,如:7%3=1,-7%3=-1,7%-3=1。
算术运算符中++,--属于一元运算符,该类运算符只需要一个操作数。
//测试自增和自减 int i=3; int j=++i; //先自增,再赋值 System.out.println("i="+i+" j="+j); //i=4,j=4 i=3; j=i++; //先赋值,再自增 System.out.println("i="+i+" j="+j); //i=4,j=3 i=3; j=--i; //先自减,再赋值 System.out.println("i="+i+" j="+j); //i=2,j=2 i=3; j=i--; //先赋值,再自减 System.out.println("i="+i+" j="+j); //i=2,j=3
赋值及其扩展赋值运算符:
运算符 | 用法 | 等效表达式 |
+= | a+=b | a=a+b |
-= | a-=b | a=a-b |
*= | a*=b | a=a*b |
/= | a/=b | a=a/b |
%= | a%=b | a=a%b |
//测试扩展运算符 int m =3; int n=4; m+=n;//相当于m=m+n System.out.println("m="+m+" n="+n); // m=7,n=4 m=3; m*=n+3; //相当于m=m*(n+3) System.out.println("m="+m+" n="+n); // m=21,n=4