rust는 return을 사용하지 않고 반환을 할 수 있다.
fn is_even(n: i32) -> bool {
n % 2 == 0
}
보면 함수가 하나의 수학식과 같다.
이렇게 수식 느낌으로 표현되는 사례는 더 있다.
ex) 조건 표현식 할당
fn is_even(n: i32) -> bool {
n % 2 == 0
}
fn main() {
let n = 5;
let desc = if is_even(n) {
"even"
} else {
"odd"
};
println!("{}", desc);
let desc = match is_even(n) {
true => "even",
false => "odd",
};
println!("{}", desc);
}
if, match를 이용하여 조건식을 통해 변수를 초기화 한다.
또한 break 키워드 역시 값을 반환할 수 있다.
fn main() {
let n = loop {
break 123
};
println!("{}", n);
}