Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про Rust: match, pattern matching, option

Приведи пример использования выражения 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 — это мощный инструмент, который обеспечивает безопасность типов и читаемость кода. Его следует использовать для обработки сложных вариантов данных.

  • Аватар

    Rust Guru

    Eduard Paul

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.

Уровень

  • Рейтинг:

    2

  • Сложность:

    4

Навыки

  • Rust

    Rust

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

#match

#pattern matching

#option

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

  • Аватар

    Rust Guru

    Eduard Paul

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.