Rust - 运算符


运算符定义将对数据执行的某些函数。运算符所处理的数据称为操作数。考虑以下表达式 -

7 + 5 = 12

这里,值 7、5 和 12 是操作数,而 + 和 = 是运算符。

Rust 中的主要运算符可以分为:

  • 算术
  • 按位
  • 比较
  • 逻辑性
  • 按位
  • 有条件的

算术运算符

假设变量a和b的值分别为10和5。

显示示例

先生编号 操作员 描述 例子
1 +(添加) 返回操作数的和 a+b 是 15
2 -(减法) 返回值的差值 ab 是 5
3 *(乘法) 返回值的乘积 a*b 是 50
4 / (分配) 执行除法运算并返回商 a/b 为 2
5 %(模数) 执行除法运算并返回余数 a % b 为 0

注意- Rust 不支持 ++ 和 -- 运算符。

关系运算符

关系运算符测试或定义两个实体之间的关系类型。关系运算符用于比较两个或多个值。关系运算符返回一个布尔值 - true 或 false。

假设A的值为10,B的值为20。

显示示例

先生编号 操作员 描述 例子
1 > 比...更棒 (A > B) 为假
2 < 小于 (A < B) 为真
3 >= 大于或等于 (A >= B) 为假
4 <= 小于或等于 (A <= B) 为真
5 == 平等 (A == B) 为假
6 != 不等于 (A != B) 为真

逻辑运算符

逻辑运算符用于组合两个或多个条件。逻辑运算符也返回布尔值。假设变量 A 的值为 10,B 的值为 20。

显示示例

先生编号 操作员 描述 例子
1 && (和) 仅当指定的所有表达式都返回 true 时,该运算符才返回 true (A > 10 && B > 10) 为假
2 ||(或) 如果至少有一个指定的表达式返回 true,则该运算符返回 true (A > 10 || B >10) 为真
3 !(不是) 该运算符返回表达式结果的倒数。例如:!(>5) 返回 false !(A >10 ) 为真

按位运算符

假设变量 A = 2 且 B = 3。

显示示例

先生编号 操作员 描述 例子
1 &(按位与) 它对其整数参数的每一位执行布尔 AND 运算。 (A & B) 为 2
2 | (按位或) 它对其整数参数的每一位执行布尔 OR 运算。 (A | B) 为 3
3 ^(按位异或) 它对其整数参数的每一位执行布尔异或运算。异或意味着操作数一为真或操作数二为真,但不能两者都为真。 (A^B) 为 1
4 !(按位非) 它是一个一元运算符,通过反转操作数中的所有位来进行运算。 (!B) 为 -4
5 <<(左移) 它将第一个操作数中的所有位向左移动第二个操作数中指定的位数。新的位用零填充。将值左移一位相当于乘以 2,左移两位相当于乘以 4,依此类推。 (A << 1) 是 4
6 >>(右移) 二进制右移运算符。左操作数的值向右移动右操作数指定的位数。 (A >> 1) 是 1
7 >>>(右移零) 该运算符与 >> 运算符类似,只是向左移动的位始终为零。 (A >>> 1) 是 1