📌 if 式
if
式は条件によって処理を分岐するものです. if
, else
, else if
が使えます.それぞれに続くものはブロック({}
)です.
fn main() {
let number = 6;
if number % 4 == 0 {
println!("number is divisible by 4");
} else if number % 2 == 0 {
println!("number is divisible by 2");
} else {
println!("number is not divisible by 4 or 2");
}
}
if
は式なので,値を返せます.ただし,その場合は返す値が同じ型でなければなりません.
fn main() {
let condition = true;
let number = if condition { 5 } else { 6 };
// let number = if condition { 5 } else { "six" }; Error!
println!("The value of number is: {}", number);
}
📌 loop 式
無限ループするにはloop
式を使います.ループから抜ける場合は break
を使います. loop
もまた式なので, break
に返り値を指定できます.
fn main() {
let mut counter = 0;
let result = loop {
counter += 1;
if counter == 10 {
break counter * 2;
}
};
println!("The result is {}", result);
}
📌 while 式
条件を満たしている間だけループさせる場合は while
式を使います. while
式は常に ()
を返します. break
は使えますが,値を返すことはできません.
fn main() {
let mut number = 3;
while number != 0 {
println!("{}", number);
number -= 1;
};
println!("LIFTOFF!!!");
}
📌 for 式
イテレータを使って,各要素に対して処理を行いたい場合はfor
式を使います.for
式は常に ()
を返します.(イテレータとは,連続する一連のデータへのアクセスを提供するオブジェクトのことです)
fn main() {
let a = [10, 20, 30, 40, 50];
for element in a.iter() {
println!("the value is: {}", element);
}
}