运算符

一元运算符

操作数是一个,故称为一元运算符。

运算符

含义

例子

-

改变数值的符号,取反

-x(-1*x)

~

逐位取反,属于位运算符

~x

++

自加1

x++ 相当于 x = x +1

--

自减1

x--

注意:

++x 因为++在前,所以先加后用。

x++ 因为++在后,所以先用后加。

算术运算符(二元运算符)

+

加法运算

x+y

-

减法运算

x-y

*

乘法运算

x*y

/

除法运算

x/y

%

取模运算(求余运算)

10 % 8 = 2

逻辑运算符

作用:用于连接boolean类型的表达式。

  1. 逻辑与:&、&&(短路) 。只有两边都为true,结果才为true。

true & true = true;

true & false = false;

false & true = false;

false & false = false;

  • 二者使用时的区别:

&:无论左边是true是false。右边都运算。
&&:当左边为false时,右边不运算。

  1. 逻辑或:|、||(短路) 。两边只要有一个为true,结果为true。

true | true = true;

true | false = true;

false | true = true;

false | false = false;

  • 二者使用时的区别:

|:两边都参与运算。

||:当左边为true。右边不运算。

  1. 逻辑异或:^。两边相同结果是false,两边不同结果是true。

true ^ true = false;

true ^ false = true;

false ^ true = true;

false ^ false = false;

  1. 逻辑非:!。结果相反。

!true = false;

!false = true;

 

移位运算符

  1. 左移运算符

将运算符左边的对象向左移动运算符右边指定的位数(在低位补0)

8 << 2 = 48;

  1. "有符号"右移运算 符

将运算符左边的对象向右移动运算符右边指定的位数。使用符号扩展机制,也就是说,如果值为正,则在高位补0,如果值为负,则在高位补1.

8 >> 2 = 2;

-8 >> 2 = -2;

  1. "无符号"右移运算 符

将运算符左边的对象向右移动运算符右边指定的位数。采用0扩展机制,也就是说,无论值的正负,都在高位补0.

8 >>> 2 = 2;

-8 >> >2 = 1073741822;

三目运算符

运用:布尔表达式?表达式1:表达式2

int x = 2, y;

y = (x > 1) ? 2 : 200;//当x > 1时,y = 2;当x <= 1时,y = 200

System.out.println(" y = " + y);

赋值运算符

 

 

原文地址:https://www.cnblogs.com/hen-java/p/12591026.html