Rust 运算符
1. 运算符
运算符用于对值和变量执行特定的操作。
Rust 支持许多常见的运算符,例如:
- 算术运算符
- 赋值运算符
- 比较运算符
- 逻辑运算符
2. 算术运算符
算术运算符用于执行基础的数学运算:
| 运算符 | 名称 | 示例 | 结果 |
|---|---|---|---|
+ | 加法 | 5 + 3 | 8 |
- | 减法 | 5 - 3 | 2 |
* | 乘法 | 5 * 3 | 15 |
/ | 除法 | 10 / 2 | 5 |
% | 求余(取模) | 10 % 3 | 1 |
示例
fn main() {
let add = 5 + 3;
let sub = 10 - 4;
let mul = 6 * 2;
let div = 12 / 3;
let rem = 10 % 3;
println!("Add: {}", add);
println!("Sub: {}", sub);
println!("Mul: {}", mul);
println!("Div: {}", div);
println!("Rem: {}", rem);
}3. 赋值运算符
赋值运算符用于给变量赋值及更新变量的值:
| 运算符 | 示例 | 等同于 |
|---|---|---|
= | x = 5 | 将 5 赋值给 x |
+= | x += 3 | x = x + 3 |
-= | x -= 2 | x = x - 2 |
*= | x *= 4 | x = x * 4 |
/= | x /= 2 | x = x / 2 |
%= | x %= 2 | x = x % 2 |
示例
fn main() {
let mut x = 10;
println!("Start: {}", x);
x += 5;
println!("After += 5: {}", x);
x -= 2;
println!("After -= 2: {}", x);
x *= 2;
println!("After *= 2: {}", x);
x /= 3;
println!("After /= 3: {}", x);
x %= 4;
println!("After %= 4: {}", x);
}4. 比较运算符
比较运算符用于比较两个值,并返回 true 或 false:
| 运算符 | 含义 | 示例 |
|---|---|---|
== | 等于 | 5 == 5 为 true |
!= | 不等于 | 5 != 3 为 true |
> | 大于 | 7 > 3 为 true |
< | 小于 | 2 < 5 为 true |
>= | 大于或等于 | 5 >= 5 为 true |
<= | 小于或等于 | 3 <= 4 为 true |
示例
fn main() {
let a = 5;
let b = 10;
println!("5 == 10: {}", a == b);
println!("5 != 10: {}", a != b);
println!("5 < 10: {}", a < b);
println!("5 >= 10: {}", a >= b);
}5. 逻辑运算符
逻辑运算符用于处理布尔(boolean)值:
| 运算符 | 名称 | 描述 |
|---|---|---|
&& | 逻辑与 (AND) | 如果两个值均为 true,则返回 true |
| || | 逻辑或 (OR) | 有一个值为true,则返回true |
! | 逻辑非 (NOT) | 反转布尔值(true 变 false,false 变 true) |
示例
fn main() {
let logged_in = true;
let is_admin = false;
println!("Is regular user: {}", logged_in && !is_admin);
println!("Has any access: {}", logged_in || is_admin);
println!("Not logged in: {}", !logged_in);
}