配列を使う場面
- 5つの変数に入った数値を足し合わせるプログラムを考える。
fn main() {
let 数0 = 3;
let 数1 = 1;
let 数2 = 4;
let 数3 = 1;
let 数4 = 5;
println!("{}", 数0 + 数1 + 数2 + 数3 + 数4);
}
- 今回は5つ変数を用意したが、配列を使うとスッキリする。
fn main() {
let 配列 = [3, 1, 4, 1, 5];
println!("{}", 配列[0] + 配列[1] + 配列[2] + 配列[3] + 配列[4]);
}
- 大量の数の合計を計算する場合も、ループで回せば問題ない。
fn main() {
let 配列 = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5, 8 ,9, 7, 9];
let mut 合計 = 0;
for n in 配列 {
合計 += n;
}
println!("{}", 合計);
}
伸長可能な配列 vec!
- 上で説明した配列は、途中で長さを変えることができない。
- 伸長可能な配列を作るには「vec!」を使う。
- よほど速度に制約がない限りはこちらを使うとよさそう。
fn main() {
let mut 配列 = vec![3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5, 8 ,9, 7, 9];
配列.push(3);
let mut 合計 = 0;
for n in 配列 {
合計 += n;
}
println!("{}", 合計);
}
配列の繰り返し処理で「今、何番目?」
- 繰り返し文「for n in 配列 {...}」では、今何番目の値を処理しているのか分からない。
- 何番目なのかを得るためには「iter().enumerate()」を使う。
fn main() {
let 配列 = vec![3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5, 8 ,9, 7, 9];
for i in 配列.iter().enumerate() {
println!("{}番目は{}", i.0, i.1);
}
}