Optional
定义 Optional,一种类型,对可能存在或不存在的值进行建模。
可选值可以被视为类型安全的可为 null 模式。 您的值可以取值或None
,您需要检查 并显式提取值以将其取出。
from collections.optional import Optional
var a = Optional(1)
var b = Optional[Int](None)
if a:
print(a.value()) # prints 1
if b: # b is False, so no print
print(b.value())
var c = a.or_else(2)
var d = b.or_else(2)
print(c.value()) # prints 1
print(d.value()) # prints 2
Optional
对可能存在也可能不存在的值进行建模的类型。
可选值可以被视为类型安全的可为 null 模式。 您的值可以取值或 None
,您需要检查 并显式提取值以将其取出。
目前 T 需要是一个CollectionElement
,这样我们才能实现 Optional 复制/移动,并允许它在集合本身中使用。
from collections.optional import Optional
var a = Optional(1)
var b = Optional[Int](None)
if a:
print(a.value()) # prints 1
if b: # b is False, so no print
print(b.value())
var c = a.or_else(2)
var d = b.or_else(2)
print(c.value()) # prints 1
print(d.value()) # prints 2
参数:
- T (
CollectionElement
):存储在 Optional.
实现的特征:
AnyType
, Boolable
, CollectionElement
, Copyable
, Movable
方法:
__init__
__init__(inout self: Self)
构造一个空的 Optional。
__init__(inout self: Self, owned value: T)
构造一个包含值的 Optional。
参数:
- value (
T
):要存储在可选 中的值。
__init__(inout self: Self, value: None)
构造一个空的 Optional。