You can use if and let together to work with values that might be
missing. These values are represented as optionals. An optional value
either contains a value or contains nil to indicate that the value is
missing. Write a question mark (?) after the type of a value to mark
the value as optional.
// Snippet #1var optionalString: String? = "Hello"optionalString == nil// Snippet #2 var optionalname: String? = "John Appleseed"var greeting = "Hello!"if let name = optionalname { greeting = "Hello,\(name)"}
Snippet#1足够清晰,但是在Snippet#2中发生了什么?有人可以分解并解释吗?它只是使用if – else块的替代方法吗?在这种情况下,let的确切作用是什么?
我确实阅读了this页面,但仍然有点困惑.
解决方法if let name = optionalname { greeting = "Hello,\(name)"}
这有两件事:
>它检查optionalname是否有值
>如果是,则“解包”该值并将其分配给名为name的String(仅在条件块内部可用).
请注意,名称的类型是String(不是String?).
如果没有let(即只使用optionalname),它只有在有值时才会进入块,但是您必须手动/显式访问String作为optionalname!.
总结以上是内存溢出为你收集整理的ios – 在Swift中使用可选值全部内容,希望文章能够帮你解决ios – 在Swift中使用可选值所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)