《Rust编程入门》4.3 运算符与表达式

在 Rust 中,运算符和表达式是编写逻辑的重要组成部分。Rust 提供了一系列运算符,用于完成数学运算、比较、逻辑处理和位操作。同时,Rust 的表达式结构使代码既清晰又高效。本节将详细介绍 Rust 的运算符种类及其用法,并探讨表达式的特点。

4.3 运算符与表达式

在 Rust 中,运算符和表达式是编写逻辑的重要组成部分。Rust 提供了一系列运算符,用于完成数学运算、比较、逻辑处理和位操作。同时,Rust 的表达式结构使代码既清晰又高效。本节将详细介绍 Rust 的运算符种类及其用法,并探讨表达式的特点。


4.3.1 算术运算符

Rust 支持基本的算术运算符,用于处理数值计算。

运算符描述示例
+加法a + b
-减法a - b
*乘法a * b
/除法(整数会截断)a / b
%取模(求余数)a % b

示例:算术运算

fn main() {
    let a = 10;
    let b = 3;
    println!("加法: {}", a + b);
    println!("减法: {}", a - b);
    println!("乘法: {}", a * b);
    println!("除法: {}", a / b);
    println!("取模: {}", a % b);
}

注意:

  • 除法操作中,如果分母为零会导致运行时错误。
  • 对整数进行除法时,结果会向零截断。

4.3.2 关系运算符

关系运算符用于比较两个值,返回一个布尔值 truefalse

运算符描述示例
==等于a == b
!=不等于a != b
<小于a < b
>大于a > b
<=小于等于a <= b
>=大于等于a >= b

示例:关系运算

fn main() {
    let x = 5;
    let y = 10;
    println!("x == y: {}", x == y);
    println!("x != y: {}", x != y);
    println!("x < y: {}", x < y);
    println!("x > y: {}", x > y);
    println!("x <= y: {}", x <= y);
    println!("x >= y: {}", x >= y);
}

4.3.3 逻辑运算符

逻辑运算符用于布尔值之间的逻辑操作。

运算符描述示例
&&逻辑与(AND)a && b
``
!逻辑非(NOT)!a

示例:逻辑运算

fn main() {
    let a = true;
    let b = false;
    println!("a && b: {}", a && b);
    println!("a || b: {}", a || b);
    println!("!a: {}", !a);
}

4.3.4 位运算符

位运算符用于对整数类型的位进行操作。

运算符描述示例
&按位与a & b
``按位或
^按位异或a ^ b
<<左移a << b
>>右移a >> b

示例:位运算

fn main() {
    let a = 2; // 二进制:10
    let b = 3; // 二进制:11
    println!("按位与: {}", a & b); // 结果:2
    println!("按位或: {}", a | b); // 结果:3
    println!("按位异或: {}", a ^ b); // 结果:1
    println!("左移: {}", a << 1); // 结果:4
    println!("右移: {}", b >> 1); // 结果:1
}

4.3.5 赋值运算符

Rust 提供了多种复合赋值运算符,用于简化代码。

运算符描述示例
=赋值a = b
+=加后赋值a += b
-=减后赋值a -= b
*=乘后赋值a *= b
/=除后赋值a /= b
%=取模后赋值a %= b

示例:赋值运算

fn main() {
    let mut x = 10;
    x += 5;
    println!("加后赋值: {}", x);
    x *= 2;
    println!("乘后赋值: {}", x);
}

4.3.6 表达式与语句

Rust 中的大部分代码片段都是表达式。表达式会返回一个值,而语句则是执行某种操作但不返回值。

表达式

  • 表达式总是有一个值。
  • 常见的表达式包括字面值、运算符、块等。

示例:表达式

fn main() {
    let x = 5;
    let y = {
        let z = x + 1;
        z * 2 // 表达式的值是 z * 2
    };
    println!("y 的值: {}", y);
}

语句

  • 语句不返回值。
  • 常见的语句包括变量声明和 ; 结尾的代码行。

示例:语句

fn main() {
    let x = 5; // 声明语句,不返回值
}

4.3.7 小结

Rust 提供丰富的运算符,涵盖算术、逻辑、关系和位操作,结合其表达式和语句的灵活设计,使得代码既高效又易读。理解这些基础内容,将为后续的复杂逻辑开发奠定坚实基础。

下一节将介绍 Rust 中的常用函数及其使用,帮助你在编程中更好地组织代码逻辑。

继续阅读

探索更多技术文章

浏览归档,发现更多关于系统设计、工具链和工程实践的内容。

全部文章 返回首页