Приведи пример использования выражения match в Rust?

Этот вопрос помогает понять, как в Rust работает паттерн-матчинг для обработки различных вариантов данных.

Короткий ответ

Выражение match в Rust используется для сопоставления значений с возможными вариантами. Оно особенно полезно при работе с типами Option, Result или перечислениями (enum).

Длинный ответ

В Rust match позволяет обрабатывать разные значения или варианты, предоставляя мощный и безопасный способ ветвления логики.

 

Пример использования match с типом Option:

let foo = Some(1);
match foo {
    Some(n) => println!("number is {n}"),
    None => println!("there is no number"),
}

 

Как работает match:

- Каждая ветка проверяет один из возможных вариантов значения.

- Rust требует полного покрытия всех вариантов (например, для Option — это Some и None).

- Если покрытие не полное, программа не скомпилируется.

 

Применение в других контекстах: Для обработки чисел или строк:

let x = 5;
match x {
    1 => println!("One"),
    2 | 3 | 5 => println!("Prime"),
    _ => println!("Something else"), // подчеркивание обозначает "все остальное"
}


match — это мощный инструмент, который обеспечивает безопасность типов и читаемость кода. Его следует использовать для обработки сложных вариантов данных.

Уровень

  • Рейтинг:

    2

  • Сложность:

    4

Навыки

  • Rust

Ключевые слова

Подпишись на Rust Developer в телеграм