Rust语言圣经-流程控制
提问
索引访问集合和for遍历有什么区别
回答
// 第一种
let collection = [1, 2, 3, 4, 5];
for i in 0..collection.len() {
let item = collection[i];
// ...
}
// 第二种
for item in collection {
}
- 使用索引(第一种)访问会因边界访问导致性能损耗;
- 当遍历集合发生改变是,第一种可能出现访问两次;
提问
如何理解let .. if
回答
if是表达式所以其结果可以复制给变量
fn main() {
let condition = true;
let number = if condition {
5
} else {
6
};
println!("The value of number is: {}", number);
}
提问
那什么是表达式?
回答
不带分号结尾就是表达式