Конструкция if let в Rust
Когда нужна только ветка с данными, полный разбор заменяют короткой записью. Слева образец заполненного варианта с именем для числа внутри, справа блок команд для этого случая. Пустой вариант так просто пропускают без отдельной ветки.
Если значение есть, его сразу достают в ветке, пустой случай пропускают:
let item = Some(15);
if let Some(n) = item {
println!("{}", n);
}
При пустой переменной блок не выполняется, и на экран ничего не попадает. Так удобно печатать только когда данные действительно лежат внутри:
let item: Option<i32> = None;
if let Some(n) = item {
println!("{}", n);
}
println!("done");
Дана переменная:
let val = Some(3);
Выведите число из val коротким
условием на вариант в main.rs.
Дана переменная:
let val: Option<i32> = None;
Скажите, напечатается ли число из
короткого условия для val.
Когда достаточно обработать только заполненный вариант, что короче: полный разбор или условие на вариант?