系列文章目录
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 关键字使整个循环退出并给予外部一个返回值。