java运算符与表达式
运算符与表达式
表达式
定义
表达式是由变量、操作符和方法调用组成的组合,能够计算出一个值。
表达式类型
| 类型 | 示例 |
|---|---|
| 算术表达式 | int sum = a + b; |
| 关系表达式 | if (a > b) { ... } |
| 逻辑表达式 | if (a > b && b > c) { ... } |
| 位运算表达式 | int result = a & b; |
| 条件表达式(三元) | int max = (a > b) ? a : b; |
运算符
算术运算符
| 运算符 | 名称 | 示例 |
|---|---|---|
+ |
加 | 1 + 1 |
- |
减 | 2 - 1 |
* |
乘 | 2 * 2 |
/ |
除 | 5 / 2(整除) |
% |
取模 | 5 % 2(余数) |
int a = 2;
int b = (++a) * 5; // 15 先自增,后运算
int c = 2;
int d = (c++) * 5; // 10 先运算,后自增
关系运算符
==、!=、>、<、>=、<=
逻辑运算符
| 运算符 | 说明 |
|---|---|
&& |
与,两个条件同时满足返回 true |
|| |
或,任意一个条件满足返回 true |
! |
非,取反 |
赋值运算符
=、+=、-=、*=、/=、%=、&=、|=、^=
条件运算符(三元)
int c = a > b ? a : b;
// 条件 ? 表达式1(true) : 表达式2(false)
位运算符
对整数的二进制位进行操作。
| 运算符 | 说明 | 规则 |
|---|---|---|
~ |
按位非 | 取反 |
& |
按位与 | 两者都为 1 则结果为 1 |
| |
按位或 | 任意一个为 1 则结果为 1 |
^ |
按位异或 | 相同为 0,不同为 1 |
<< |
左移 | 高位移出,低位补 0,相当于 × 2^n |
>> |
右移(有符号) | 低位溢出,高位正数补 0、负数补 1,相当于 ÷ 2^n |
>>> |
无符号右移 | 低位溢出,高位补 0 |