Rust学习入门--【12】Rust 循环

系列文章目录

Rust 语言是一种高效、可靠的通用高级语言,效率可以媲美 C / C++ 。本系列文件记录博主自学Rust的过程。欢迎大家一同学习。

Rust学习入门–【1】引言
Rust学习入门–【2】Rust 开发环境配置
Rust学习入门–【3】Cargo介绍
Rust学习入门–【4】Rust 输出到命令行
Rust学习入门–【5】源代码文件结构简介
Rust学习入门–【6】Rust 基础语法
Rust学习入门–【7】Rust 数据类型
Rust学习入门–【8】复合类型
Rust学习入门–【9】Rust 函数
Rust学习入门–【10】Rust 条件语句
Rust学习入门–【11】Rust 运算符
Rust学习入门–【12】Rust 循环
Rust学习入门–【13】Rust 字符串(上)
Rust学习入门–【14】Rust 字符串(下)
Rust学习入门–【15】Rust 所有权
Rust学习入门–【16】Rust 借用所有权 Borrowing / 引用
Rust学习入门–【17】Rust Slice(切片)类型



Rust 循环

循环 其实就是一种重复,在满足指定的条件下,重复的做某些事情。
在这里插入图片描述

Rust 语言支持以下三种循环语句

  • while 循环:在某些条件为真的情况下就会永远执行下去的循环
  • for循环:有确定次数的循环
  • loop循环:重复执行且永远不会结束的循环

while 循环

while 循环是最典型的条件语句循环。

while 循环会在每次重复执行前先判断条件是否满足,满足则执行,不满足则退出。

实例:

fn main() {
    let mut number = 1;
    while number != 5 {
        println!("{}", number);
        number += 1;
    }
    println!("EXIT");
}

运行结果:

1
2
3
4
EXIT

for循环

for 循环用于执行代码块指定的次数,常用来遍历一个线性数据结构(比如数组、向量)。

在 C 语言中 for 循环使用三元语句控制循环,但是 Rust 中没有这种用法,只有 for…in 这种格式。

实例:

fn main() {
    let a = [1, 2, 3, 4, 5];
    for i in a.iter() {
        println!("值为 : {}", i);
    }
}

运行结果:

值为 : 1
值为 : 2
值为 : 3
值为 : 4
值为 : 5

这个程序中的 for 循环完成了对数组 a 的遍历。a.iter() 代表 a 的迭代器(iterator),在学习有关于对象的章节以前不做赘述。

当然,for 循环其实是可以通过下标来访问数组的:

实例:

fn main() {
let a = [1, 2, 3, 4, 5];
    for i in 0..5 {
        println!("a[{}] = {}", i, a[i]);
    }
}

运行结果:

a[0] = 1
a[1] = 2
a[2] = 3
a[3] = 4
a[4] = 5

loop循环

loop 语句代表着一种死循环。它没有循环条件,也没有循环次数,无限循环。

实例:

fn main() {
    let s = ['R', 'U', 'S', 'T'];
    let mut i = 0;
    loop {
        let ch = s[i];
        if ch == 'T' {
        //跳出循环
            break;
        }
        println!("\'{}\'", ch);
        i += 1;
    }
}

运行结果:

在这里插入图片描述

loop 循环可以通过 break 关键字使整个循环退出并给予外部一个返回值。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

文斗士

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

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

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

打赏作者

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

抵扣说明:

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

余额充值