可选用例有哪些用例,可选用在什么情况下可以满足?
答案 0 :(得分:4)
optionals背后的想法是,当变量不包含值时,具有一个一致的值nil
。这是为了消除一些任意的sentinel value。
考虑一些整数值:如果没有可选值,那么如果尚未真正设置变量,则应设置哪个值?有时0
可能有效。在其他时候,您可以使用-1
。在其他情况下,您可以使用Int.max
。最终很难始终如一地知道要使用什么哨兵值。这是最简单的类型之一,整数。处理其他类型时,它甚至变得更加混乱。
我们要消除猜测,并采用一种一致的方式来指定未设置变量。可选功能可以达到此目的。
答案 1 :(得分:1)
可选是swift真正强大的功能。 使用可选的,您可以检查变量是否包含值。
考虑到我们已经声明了一个变量来保存另一个名为 BViewController
的 viewController 的对象var vc: BViewController?
只要您使用此功能,就可以直接执行以下操作:
vc?.someproperty = value
此语句首先检查 vc 变量中的值,如果该值为nil,它将不再执行。
这只是一个示例,您将在整个项目中使用可选
答案 2 :(得分:0)
Optional是Swift语言中的一种类型,没什么花哨的。诠释和诠释? (可选的Int)是两种不同的类型,如果您的变量恰好是Int类型,则您可以绝对确定它始终具有整数值,并且如果您的变量是Int类型?它要么是整数值,要么根本没有值(换句话说,它将是nil)。
认为可选为包装类型。就像是将值包装在里面的礼品盒一样,就像现实生活中的盒子一样,可选对象可以包含某些内容或为空。