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

分类: 计算机技术
推荐阅读:
Python float()函数 在 Python 中,float()是一个内置函数,用于将字符串、整数或其他数字类型转换为浮点数类型。
arpspoof未找到命令解决方法 arpspoof 是一款进行arp欺骗的工具,攻击者通过毒化受害者arp缓存,将网关mac替换为攻击者mac,然后攻击者可截获受害者发送和收到的数据包,可获取受害者账户、密码等相关敏感信息。
什么是Cgo 简单的说,就是自C语言出现,已经累积了无数功能强大、性能卓越的C语言代码库,可以说难以替代;在现代编程语言中,如何方便快捷的使用这些C语言库,成了它们一个必须重视的话题。
Python globals()函数 globals() 是 Python 内置函数之一,用于返回当前全局作用域中所有变量的字典。这个字典包含了所有已定义的全局变量,键为变量名,值为对应的值。可以通过修改这个字典中的变量来更新全局作用域中的变量。
Python bytearray()函数 bytearray是 Python 中的一个内置类,用于表示二进制数据。与 bytes 类似,bytearray也是不可变的序列,但是它可以通过索引来修改其中的元素,因此可以用于一些需要修改二进制数据的场合。
关闭Shell时保持子进程继续运行 在Linux系统里,当你关闭 shell 或者终端时,没有经过 nohup 或 setid 等命令后台执行的程序也会随着 shell 的关闭而结束;如果你已经提交了命令,也没有使用 nohup 或 setid 进行处理,你可以用这一条命令实现退出shell或终端而保持进程不被关闭: