How to use match with a enum in Rust

2 Answers

0 votes
#[allow(dead_code)]

enum Temperature {
    Celsius(i32),
    Fahrenheit(i32),
}

fn main() {
    let temperature = Temperature::Celsius(21);
    

    match temperature {
        Temperature::Celsius(t) if t > 20 => println!("{} > 25 Celsius", t),
        Temperature::Celsius(t) => println!("{} < 25 Celsius", t),

        Temperature::Fahrenheit(t) if t > 80 => println!("{} > 80 Fahrenheit", t),
        Temperature::Fahrenheit(t) => println!("{} < 80 Fahrenheit", t),
    }
}




/*
run:

21 > 25 Celsius

*/

 



answered May 5, 2023 by avibootz
0 votes
#[allow(dead_code)]

enum Temperature {
    Celsius(i32),
    Fahrenheit(i32),
}

fn main() {
    let temperature = Temperature::Fahrenheit(70);
    

    match temperature {
        Temperature::Celsius(t) if t > 20 => println!("{} > 25 Celsius", t),
        Temperature::Celsius(t) => println!("{} < 25 Celsius", t),

        Temperature::Fahrenheit(t) if t > 80 => println!("{} > 80 Fahrenheit", t),
        Temperature::Fahrenheit(t) => println!("{} < 80 Fahrenheit", t),
    }
}




/*
run:

70 < 80 Fahrenheit

*/

 



answered May 5, 2023 by avibootz

Related questions

5 answers 250 views
250 views asked May 4, 2023 by avibootz
1 answer 111 views
111 views asked May 5, 2023 by avibootz
3 answers 191 views
4 answers 212 views
3 answers 199 views
2 answers 167 views
1 answer 112 views
112 views asked Oct 28, 2022 by avibootz
...