Как использовать оператор соответствия в Rust

match — это оператор потока управления в Rust, который используется для передачи управления определенному блоку кода на основе значение проверяемой переменной. Этот оператор является эквивалентом оператора switch в таких языках, как C ++, JavaScript и Java.

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

Код

Пример 1

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

 fn  main () {пусть input = 2;  match input {//Если вход 0, вывести Summer 0 => println! ("Лето"),//Если вход 1, вывести Winter 1 => println! ("Зима"),//Если вход  равно 2, выведите Осень 2 => println! ("Осень"),//Если введено 3, выведите Spring 3 => println! ("Весна"),//Если ввод не соответствует 0, 1, 2 или  3, print//неверный ввод _ => println! ("Invalid input")}} 
путь>

путь>

Пример 2

В match несколько элементов могут быть сопоставлены с одним оператором:

 fn main () {let input = 4  ;  match input {//Если вход 0, вывести Summer 0 => println! ("Лето"),//Если вход 1, вывести Winter 1 => println! ("Зима"),//Если вход  равно 2, выведите Осень 2 => println! ("Осень"),//Если введено 3 или 4, выведите Spring 3 |  4 => println! ("Spring"),//Если ввод не соответствует 0, 1, 2, 3 или 4, print//недопустимый ввод _ => println! ("Invalid input")}} 

Пример 3

Следующий код показывает как вы можете сопоставить диапазоны:

 fn main () {let input = 19;  match input {//Если вход 0, вывести Summer 0 => println! ("Лето"),//Если вход 1, вывести Winter 1 => println! ("Зима"),//Если вход  находится между 2 и 20 (оба включительно), выведите Осень 2 ... 20 => println! ("Осень"),//Если введено 21, выведите Spring 21 => println! ("Весна"),// Если ввод не находится между 0 и 21 (оба включительно), print//недопустимый ввод _ => println! ("Недопустимый ввод")}} 

Помните, match не ограничивается числовыми типами данных. Также можно использовать другие типы данных, такие как строковые и логические.. Дополнительные сведения см. В официальной документации.

Оцените статью
nanomode.ru
Добавить комментарий