RUST零基础入门——控制流

本文介绍了RUST编程语言中的条件语句,包括其与其它语言的区别,布尔类型的强制要求,以及利用ifelse实现三元表达式。同时涵盖了循环结构,如无限循环(loop)、while和for的用法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

条件语句


RUST的条件语句与其他语言大体相同,都是 if else 关键字,这里重点介绍与其他语言的不同。首先RUST中的条件判断表达式是不需要加小括号的:

fn main() {
    let number = 6;

    if number % 4 == 0 {
        println!("number is divisible by 4");
    } else if number % 3 == 0 {
        println!("number is divisible by 3");
    } else if number % 2 == 0 {
        println!("number is divisible by 2");
    } else {
        println!("number is not divisible by 4, 3, or 2");
    }
}

其次RUST中的条件判断表达式必须是bool类型,不支持将非布尔类型自动转换为布尔类型,下面这种写法会报错,因为number是个整数类型:

fn main() {
    let number = 3;

    if number {
        println!("number was three");
    }
}

另外,在RUST中也可以借助 if else 语句实现类型三元表达式(A ? B : C)的效果,但是 if 和 else 后面接的表达式块的数据类型必须是一致的比如都是整型:

fn main() {
    let condition = true;
    let number = if condition { 5 } else { 6 };

    println!("The value of number is: {number}");
}

循环语句


RUST中提供了 loop 、while 、for 三种循环方式。首先介绍一下 loop,它是RUST提供的一种无限循环,不用判断表达式即可进入,使用break关键字可以根据需要跳出循环:

fn main() {
    let mut count = 0;
    'counting_up: loop {
        println!("count = {count}");
        let mut remaining = 10;

        loop {
            println!("remaining = {remaining}");
            if remaining == 9 {
                break;
            }
            if count == 2 {
                break 'counting_up;
            }
            remaining -= 1;
        }

        count += 1;
    }
    println!("End count = {count}");
}

然后是while循环,和其他语言使用方式没什么区别,就是判断表达式不用加括号:

fn main() {
    let mut number = 3;

    while number != 0 {
        println!("{number}!");

        number -= 1;
    }

    println!("LIFTOFF!!!");
}

最后是for循环,它没有C语言里的三元控制表达式,倒是和高级语言如python基本类似:

fn main() {
    let a = [10, 20, 30, 40, 50];

    for element in a {
        println!("the value is: {element}");
    }
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

# 不想写代码的程序猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值