Rust Basics

Rust if, else if and else

Run code only when a condition is true, and use if as an expression that returns a value.

  • Beginner
  • 2 min read
  • 1 runnable example
What you'll learn
  • if, else if, else
  • Conditions must be bool
  • if as an expression
score = 87
  1. 1score >= 90false, skip
  2. 2score >= 70true
  3. 3"Good"this branch runs

The first true branch runs

An if statement runs a block only when its condition is true. The condition must be a bool: Rust does not treat numbers as true or false.

The conditions are checked from top to bottom and only the first true branch runs, so 87 prints Good. Because if is an expression, it can produce a value for let: every branch must then return the same type.

Key points

  1. Conditions are checked from top to bottom.
  2. Only the first true branch runs.
  3. let grade = if ... { 'A' } else { 'B' }; stores the result.

Runnable Rust example

Rust
Run code →
main.rs
fn main() {
    let score = 87;

    if score >= 90 {
        println!("Excellent");
    } else if score >= 70 {
        println!("Good");
    } else {
        println!("Keep practicing");
    }

    let grade = if score >= 90 { 'A' } else if score >= 80 { 'B' } else { 'C' };
    println!("Grade: {grade}");
}
Get a Run button for this example Result of running the code
Good
Grade: B

Practice

Open the example in the online compiler, change a value or add a line, and predict the output before you run it. Then break the code on purpose and read the compiler's message.

Finished this lesson?

Mark it as learned to track your progress.

Next: FizzBuzz →

Practice with a challenge

Use what this lesson covers to solve a real problem. Each challenge runs in your browser with instant tests and an AI review.

All challenges