31天会用Rust——Day11,可能为空Option

1,Option的结构

是个枚举,T是泛型,表示实际包裹的值。

Some(T)代表有值,值为T。
None代表空值。

enum Option<T>{
    
    
	Some(T),
	None
}

判断空的方法:

is_none()
is_some()

获取值的方法:

unwrap()

2,简单使用

定义一个可能为空的值:

fn main() {
    
    
    let a: Option<i32> = None;
    println!("{}", a.is_none());
}

true

后来设置值:

fn main() {
    
    
    let mut a: Option<i32> = None;
    a = Some(123);
    
    println!("{}", a.is_none());
}

false

获取这个值:

fn main() {
    
    
    let mut a: Option<i32> = None;
    a = Some(123);
    
    if a.is_some() {
    
    
        println!("{}", a.unwrap());
    }
}

123

猜你喜欢

转载自blog.csdn.net/qq_37284843/article/details/124176143
今日推荐