Rust

Rustの変数とデータ型

let、mut、基本的な型、条件分岐、繰り返し、関数をまとめて学びます。

Rust入門の講座一覧

01

letとmut

Rustの変数はデフォルトで変更できません。値を変更する変数にはmutを付けます。

変更できる変数RUST
fn main() {
    let name: &str = "Mity";
    let mut score: i32 = 70;
    score += 15;
    println!("{name}: {score}点");
}
実行結果OUTPUT
Mity: 85点

mutを付けずに値を変更するとコンパイルエラーになります。変更が不要なら、変更できないままにしておくほうが意図を伝えやすくなります。

02

基本のデータ型

整数にはi32、小数にはf64、真偽値にはbool、文字列リテラルには&strをよく使います。所有する文字列はStringです。

型を使い分けるRUST
fn main() {
    let age: u32 = 20;
    let height: f64 = 170.5;
    let is_student: bool = true;
    let name: String = String::from("Mity");
    println!("{name}: {age}歳、身長{height}cm、学生={is_student}");
}
実行結果OUTPUT
Mity: 20歳、身長170.5cm、学生=true
整数型は混ぜられないi32u32は別の型です。必要な変換方法と値の範囲を確認してから変換します。
03

条件分岐と繰り返し

Rustのifは式でもあるため、条件によって値を作れます。forは範囲やコレクションを順番に処理します。

ifとforRUST
fn main() {
    let score = 82;
    let result = if score >= 60 { "合格" } else { "再挑戦" };
    for number in 1..=3 {
        println!("{number}回目: {result}");
    }
}
実行結果OUTPUT
1回目: 合格
2回目: 合格
3回目: 合格
04

関数を定義する

関数はfnで定義し、引数と戻り値の型を明示します。最後の式が戻り値になる場合、セミコロンを付けません。

送料を計算するRUST
fn shipping_fee(weight: u32) -> u32 {
    if weight <= 2 { 300 } else { 600 }
}

fn main() {
    println!("送料: {}円", shipping_fee(3));
}
実行結果OUTPUT
送料: 600円
05

練習

整数のリストから60点以上だけを選び、合計を返す関数を作ってみましょう。次の所有権とはでは、配列やStringを関数へ渡すときの考え方を学びます。