固定長配列
配列は、同じ型の値を固定された個数だけ並べたものです。
fn main() {
let numbers: [i32; 5] = [10, 20, 30, 40, 50];
println!("{}", numbers[0]); // 10
println!("{}", numbers.len()); // 5
}
スライス
配列やVecの一部(または全部)を参照する形式が「スライス」です。
fn main() {
let numbers = [10, 20, 30, 40, 50];
let middle = &numbers[1..4]; // [20, 30, 40]
println!("{:?}", middle);
}
Vec:可変長の配列
Vec<T>(ベクタ)は、要素数を実行時に増減できるコレクションです。Foundationコースでは、主にこのVecを使っていきます。
fn main() {
let mut numbers: Vec<i32> = Vec::new();
numbers.push(10);
numbers.push(20);
numbers.push(30);
println!("{:?}", numbers); // [10, 20, 30]
println!("要素数: {}", numbers.len());
numbers.pop(); // 末尾を取り除く
println!("{:?}", numbers); // [10, 20]
}
vec!マクロを使うと、初期値を持つVecを簡単に作れます。
fn main() {
let numbers = vec![1, 2, 3, 4, 5];
println!("{:?}", numbers);
}
Vecを繰り返し処理する
fn main() {
let numbers = vec![1, 2, 3, 4, 5];
let mut sum = 0;
for n in &numbers {
sum += n;
}
println!("合計: {}", sum);
}
演習:Vecの最大値・最小値・合計
コード提出フォーム
RUST安全なサーバー側採点連携が未接続のため、現在は提出できません。
採点基盤準備中
公開テストケース
読み込み中…