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 eval()函数 在Python中,eval()是一个内置函数,用于将一个字符串作为Python表达式执行,并返回表达式的结果。
通过两个已知点,找出直线(y = kx + b)的方程式 解决方程组 y1 = kx1 + b和y2 = kx2 + b;其中x1,y1,x2,y2是已知变量;k和b是要找到的系数。
判断文件格式 在某些时候,我们需要判断文件是什么类型;而通过文件后缀(扩展名)并不能满足需求,因为扩展名可随意修改,试想一下对方给你发送了一个伪造扩展名的图片文件,实际上却是个木马病毒,又或者恶意攻击者上传了一个木马病毒到你的服务器,而你的程序却认为它是张图片;
Python Qt库PySide和PyQt哪个好? Qt是一个跨平台的GUI程序开发框架;使用Qt可以轻松的开发出GUI程序;而想在Python中创建Qt应用,则需一套用于调用Qt API的库;这里主要介绍两个比较成熟的python Qt库,PyQt和PySide;
Python print()函数 print() 函数是 Python 内置函数之一,用于输出指定的对象。它可以接受多个参数,用逗号分隔,它们将被依次输出,并且默认情况下它们之间会用空格分隔。在输出完成之后,print() 函数会自动在末尾添加一个换行符。
Python breakpoint()函数 breakpoint()是 Python 3.7 中新增的一个调试工具,它是一个内置函数,可以在程序执行过程中插入一个断点,让程序停在该处等待调试器的进一步命令。