Конструкция match в Rust
В языке программирования Rust существует специальная конструкция match. Она служит для оценки какого-нибудь выражения путем сравнения этого выражения с набором значений. В случае совпадения значений выполняется определенный код.
Формально конструкция match определяется следующим образом:
После оператора match указывают сравниваемое выражение, к примеру, переменная. Потом идет перечисление тех значений, с которыми надо сравнивать.
После оператора
В самом конце, то есть после всех значений, указывают универсальное значение
Рассмотрим пример:
Мы видим, что в нашей match-конструкции происходит последовательное сравнение значения переменной num со значениями 1, 2, 3. Так как num равняется 2, переменная соответствует одному из искомых значений.
В результате на консоль выведется строка "два".
Можно рассмотреть и другую ситуацию:
В этой конструкции значение переменной num не совпадает ни с одним из значений в нашей match-конструкции, таким образом, будет применяться следующий код:
На практике конструкция match способна и возвращать значение. В такой ситуации у нас есть возможность присвоить это значение переменной:
В коде выше результат конструкции match присваивается соответствующей переменной, которая называется result. При этом возвращаемые значения указаны после оператора
По материалам https://metanit.com/rust/tutorial/.