Вариант None
Вариант None является одним из двух вариантов перечисления Option и представляет отсутствие значения. Он используется в ситуациях, когда значение может быть либо чем-то, либо ничем. В отличие от Some, вариант None не содержит внутри себя никаких данных.
Синтаксис
Option::None
Пример
Давайте создадим переменную типа Option со значением None и выведем её на экран:
fn main()
{
let res: Option<i32> = None;
println!("{:?}", res);
}
Результат выполнения кода:
None
Пример
Давайте проверим, является ли значение вариантом None, используя конструкцию match:
fn main()
{
let res: Option<i32> = None;
match res
{
Some(value) => println!("Value: {}", value),
None => println!("No value"),
}
}
Результат выполнения кода:
No value
Пример
Давайте используем метод unwrap_or, чтобы получить значение по умолчанию, если переменная равна None:
fn main()
{
let res: Option<i32> = None;
let value = res.unwrap_or(0);
println!("{}", value);
}
Результат выполнения кода:
0