Rust loop循环详细用法

当需要多次执行同一段代码时,循环就能很好的解决问题;Rust语言中支持多种循环,本文将介绍loop循环;

Rust中的loop循环,不仅支持breakcontinue关键字,在多层嵌套时,可break指定的loop循环,而且loop循环可拥有返回值

使用 loop 重复执行代码

下面这段代码将无限循环的打印hello world,直到你按下Ctrl - C终止程序运行;

fn main() {

    loop {
        println!("hello world");
    }
}

跳出 loop 循环

当需要跳出循环体时,可使用break关键字;

修改前面的例子,循环体执行了 10 次就退出循环;

fn main() {

    let mut times = 0;
    loop {
        if times > 9 {
            break;
        }
        println!("hello world");

        times = times + 1;
    }
}

当存在多个循环嵌套时,可以为循环标记一个循环标签,使用break可跳出指定的循环;具体用法,请看例子:

fn main() {

    let mut count = 0;

    'label1:loop {
        
        loop {
            count = count + 1;
            if count == 10{
                break; //跳出当前循环
            }

            println!("{}",count);

            if count > 20{
                break 'label1; //跳出标签为 label1 的循环
            }
        }
    }
}

这段代码将打印除了10以外,1到21的数;

你还可使用continue关键字结束本次循环,开始下一次循环;

loop循环体的返回值

在Rust中,loop循环体可以拥有一个返回值:

fn main() {

    let mut count = 0;
    let result = loop {
        count += 1;
        
        if count ==10{
            break count *10;
        }
    };
    println!("{}",result);
}

当count累加到10时,退出循环,并返回count的十倍数;

程序运行结果:

100

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

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

分类: 计算机技术
推荐阅读:
PyQt:使用QVBoxLayout实现垂直布局 所谓的布局,你可以理解为窗口上控件(部件)的排版方式;使用 Layout 进行布局,窗口上的部件能随窗口大小的变化而变化;在本文中,你将掌握在Python中使用 QVBoxLayout 来进行垂直布局;
PySide6 aboutQt()函数详细教程 PySide6.QtWidgets.QApplication类的aboutQt()函数用于显示一个关于Qt的简单消息框;该消息包括应用程序正在使用的Qt版本号;
Golang读取INI配置文件到结构体 本文将介绍Golang使用github.com/go-ini/ini包读取ini配置文件到结构体的方法。
Golang实现字符串的MD5加密 本文将使用 golang 自带的 crypto/md5 库实现MD5的字符串加密;
Python iter()函数 在Python中,iter()函数用于获取一个可迭代对象的迭代器。
Python dict()函数 在Python中,dict()函数用于创建一个字典对象。它可以接受不同类型的参数,并根据参数的不同生成字典对象。具体来说,dict()函数有以下三种使用方式: