1、算术运算符
+(加) -(减) *(乘) /(除) %(求余)
当参与/运算时,如果两个操作数都是整数,表示整数除法,否则,表示浮点除法。
整数被0除或者被0求余会产生ArithmeticException异常;浮点数被0除,会得到无穷大的结果,被0求余会得到NaN。
可以在赋值语句中,采用一种简化的格式书写二元算术运算符。如:x+=3;等价于x=x+3;(运算符放在赋值号的左侧)。
2、自增/自减运算符
int m = 3; int n = 3; int a = 2 * ++m;//a=8,使用的m是加1后的。 int b = 2 * n++;//b=6,使用的n是3,运算完成后,n再加1。
自增或自减的操作数的不能说数值(比如:3++ 错误)。
3、位运算符
&, |, ^, ~, <<, >>, >>>;其中[~]是一元运算符,其余为二元运算符,二元运算符还有相应的赋值运算操作符[&=, |=, ^=, >>=, >>>=, <<=]。
int a = 17;//10001 int b = 9;//1001 System.out.println("a:" + Integer.toBinaryString(a) + " b:" + Integer.toBinaryString(b)); System.out.println(" a&b:" + Integer.toBinaryString(a & b) + "\n a|b:" + Integer.toBinaryString(a | b) + "\n ~a:" + Integer.toBinaryString(~a) + "\n a^b:" + Integer.toBinaryString(a ^ b)); System.out.println(a<<1);
>> 右移,高位补符号位 这里右移一位表示除2
>>> 无符号右移,高位补0;
与>>类似
<< 左移 左移一位表示乘2,二位就表示4,就是2的n次方
4、关系运算符
==(等于) !=(不等于) >(大于) >=(大于等于) <(小于) <=(小于等于)
5、逻辑运算符
&&(逻辑“与”) ||(逻辑“或”) !(逻辑“非”)
如果&&、||的第一个操作数能确定表达式的值,将不再计算第二个操作数。
6、三目运算符
condition ? expression1 : expression2
当condition为真时,计算expression1的值,否则计算expression2的值。
原文:http://www.cnblogs.com/wcj112/p/3582738.html