清除 Swift 中的可选变量
Clear an optional variable in Swift
如果我声明一个空图像:
var myImage: UIImage?
然后给它一个值:
myImage = UIImage(named: "drawing.png")
我以后如何删除该值,将其恢复到原来的空状态?
像这样将其值设置回零
myImage = nil
var myImage: UIImage?
基本上是使 UIImage
自动指向 nil
的缩写。
因此,要将其重置为原始值,请说:
myImage = nil
Optional
是 Swift 中的 enum
类型;它有两种情况:
enum Optional<T> : NilLiteralConvertible {
case None
case Some(T)
...
}
通过将图像分配给您的 Optional<UIImage>
,您已经隐式指定了 .Some(image)
。要清除它,可以使用 .None
。但是由于Optional
也符合NilLiteralConvertible
,所以可以用更简单明了的nil
.
声明为AnyHashable
,如果需要更改引用的数据类型:
var x: AnyHashable
myImage = UIImage(named: "drawing.png")
如果我声明一个空图像:
var myImage: UIImage?
然后给它一个值:
myImage = UIImage(named: "drawing.png")
我以后如何删除该值,将其恢复到原来的空状态?
像这样将其值设置回零
myImage = nil
var myImage: UIImage?
基本上是使 UIImage
自动指向 nil
的缩写。
因此,要将其重置为原始值,请说:
myImage = nil
Optional
是 Swift 中的 enum
类型;它有两种情况:
enum Optional<T> : NilLiteralConvertible {
case None
case Some(T)
...
}
通过将图像分配给您的 Optional<UIImage>
,您已经隐式指定了 .Some(image)
。要清除它,可以使用 .None
。但是由于Optional
也符合NilLiteralConvertible
,所以可以用更简单明了的nil
.
声明为AnyHashable
,如果需要更改引用的数据类型:
var x: AnyHashable
myImage = UIImage(named: "drawing.png")