Java-基本运算

Java 运算符

Java 中的运算符与 C 中基本一致。

算术运算符

操作符 描述 例子
+ 加法 : 相加运算符两侧的值 A + B 等于 30
- 减法 : 左操作数减去右操作数 A – B 等于 -10
* 乘法 : 相乘操作符两侧的值 A * B 等于200
/ 除法 : 左操作数除以右操作数 B / A 等于2
++ 自增: 操作数的值增加1 B++++B 等于 21
-- 自减: 操作数的值减少1 B----B 等于 19

关系运算符

运算符 描述 例子
== 检查如果两个操作数的值是否相等,如果相等则条件为真。 (A == B)为假。
!= 检查如果两个操作数的值是否相等,如果值不相等则条件为真。 (A != B) 为真。
> 检查左操作数的值是否大于右操作数的值,如果是那么条件为真。 (A > B)为假。
< 检查左操作数的值是否小于右操作数的值,如果是那么条件为真。 (A < B)为真。
>= 检查左操作数的值是否大于或等于右操作数的值,如果是那么条件为真。 (A >= B)为假。
<= 检查左操作数的值是否小于或等于右操作数的值,如果是那么条件为真。 (A <= B)为真。

逻辑运算符

操作符 描述 例子
&& 称为逻辑与运算符。当且仅当两个操作数都为真,条件才为真。 (A && B) 为假。
` `
! 称为逻辑非运算符。用来反转操作数的逻辑状态。如果条件为true,则逻辑非运算符将得到false。 !(A && B) 为真。

位运算符

操作符 描述 例子
如果相对应位都是1,则结果为1,否则为0 (A&B),得到12,即0000 1100
` ` 如果相对应位都是0,则结果为0,否则为1
^ 如果相对应位值相同,则结果为0,否则为1 (A ^ B)得到49,即 0011 0001
~ 按位取反运算符翻转操作数的每一位,即0变成1,1变成0。 (〜A)得到-61,即1100 0011
<< 按位左移运算符。左操作数按位左移右操作数指定的位数。 A << 2 得到240,即 1111 0000
>> 按位右移运算符。左操作数按位右移右操作数指定的位数。 A >> 2 得到15即 1111
>>> 按位右移补零操作符。左操作数的值按右操作数指定的位数右移,移动得到的空位以零填充。 A>>>2 得到15即0000 1111

赋值运算符

操作符 描述 例子
= 简单的赋值运算符,将右操作数的值赋给左侧操作数 C = A + B 将把A + B得到的值赋给C
+= 加和赋值操作符,它把左操作数和右操作数相加赋值给左操作数 C += A 等价于C = C + A

类似 += ,其他的算数运算符位运算符逻辑运算符都可以加在 = 前面。

条件运算符

1
variable x = (expression) ? value_if_true : value_if_false;

instanceof 运算符

该运算符用于操作对象实例,检查该对象是否是一个特定类型(类类型或接口类型)。

1
variable instanceof class_or_interface_type_name;

例如:

1
2
String name = "James";
boolean result = name instanceof String; // 由于 name 是 String 类型,所以返回真

运算符的优先级

详见参考