Rust中的 if 表达式

if表达式允许根据条件的不同而执行不同的代码分支,如果条件满足,则运行某段代码,如果条件不满足则不运行这段代码;

fn main(){
    let age = 15;

    if age >= 18 {
        println!("已成年!");
    }else{
        println!("还未成年!")
    }
}

需要注意的是,if表达式中的条件必须是bool值,Rust不会自动将非布尔值转换成布尔值;下面这段代码将产生一个错误:

fn main(){
    let number = 1;
    if number {
        println!("{}",number);
    }
}

else if 处理多个分支

可以将else if表达式与ifelse表达式组合来处理多个条件;

fn main() {
    let age = 19;

    if age >= 1 && age <= 4 {
        println!("幼儿");
    } else if age >= 5 && age <= 11 {
        println!("儿童");
    } else if age >= 12 && age <= 18 {
        println!("少年");
    } else if age >= 19 && age <= 35 {
        println!("青年");
    } else if age >= 36 && age <= 59 {
        println!("中年");
    } else if age >= 60 {
        println!("老年");
    } else {
        println!("婴儿");
    }
}

在 let 语句中使用 if

因为if是一个表达式,我们可以在let语句的右侧使用它:

fn main() {
    let age = 5;

    let price = if age > 18 { 20 } else { 10 };

    println!("The price of the ticket is {} Yuan.", price);
}

运行结果

The price of the ticket is 10 Yuan.

原创内容,如需转载,请注明出处;

本文地址: https://www.perfcode.com/p/if-expressions-in-rust.html

分类: 计算机技术
推荐阅读:
Rust解析YAML,结构体序列化和反序列化 serde_yaml 是 Rust 的一个 crate,提供了支持将数据结构序列化为 YAML 格式,以及将 YAML 格式反序列化为 Rust 数据结构的功能。
MySQL ANY_VALUE() 函数 ANY_VALUE()函数对于启用了ONLY_FULL_GROUP_BY模式,使用GROUP BY 进行查询时很有用;该函数用于抑制启用ONLY_FULL_GROUP_BY模式时导致的值拒绝;
Python实现二分法检索(binary search) 二分法检索(binary search)又称折半检索,二分法检索的基本思想是设字典中的元素从小到大有序地存放在数组(array)中。
Rust 宏编程 Rust 的宏编程是一种强大的元编程技术,允许您在编译时生成代码,创建自定义语法,以及进行各种代码转换。在 Rust 中,标准宏是内置于 Rust 标准库中的宏。这些宏是 Rust 语言提供的一部分,可直接在任何 Rust 代码中使用,无需额外的导入或引入其他依赖。
kali终端改为一行显示 本文将探讨如何将Kali中的ZSH终端由双行显示切换为单行显示;
undefined reference to `WinMain' 解决方法 使用gcc对C代码进行编译时提示undefined reference to `WinMain',collect2.exe: error: ld returned 1 exit status;详细的信息大致如下: