Iniciante Fundamentos

Condicionais

Condicionais executam código conforme uma condição. Em Rust, if e else funcionam como comando e também como expressão.

if / else

A condição precisa ser do tipo bool (sem conversão automática).

fn main() {
    let nota = 7;
    if nota >= 6 {
        println!("Aprovado");
    } else {
        println!("Reprovado");
    }
}

else if

fn main() {
    let n = 0;
    if n > 0 {
        println!("Positivo");
    } else if n < 0 {
        println!("Negativo");
    } else {
        println!("Zero");
    }
}

if como expressão

if retorna um valor, então você pode atribuí-lo a uma variável. Os ramos devem ter o mesmo tipo.

fn main() {
    let par = true;
    let texto = if par { "par" } else { "ímpar" };
    println!("{}", texto);
}

Cuidado com tipos

Os dois ramos precisam retornar o mesmo tipo, senão dá erro de compilação.

fn main() {
    let idade = 20;
    let categoria = if idade >= 18 { "adulto" } else { "menor" };
    println!("{}", categoria);
}