Swift 在有条件的情况下,可选择快速展开

Swift 在有条件的情况下,可选择快速展开,swift,optional,Swift,Optional,打印(问候1)给出: 您好,可选(“全”)\n 打印(问候2)给出: “你好,全\n” 有人能帮我解释一下差异背后的原因吗?谢谢 如果您的值是可选的(?),则表示不必有值(可以为空,并且没有错误)。如果您的非可选值为空,则代码将失败。苹果公司有一篇关于这一点的文章: 这就是苹果对optionals的看法: 可选链接是查询和调用属性的过程, 方法和当前可能为nil的可选上的下标 在Swift引用中查找“可选绑定”。相关:, var optionalname: String? = "QUAN" l

打印(问候1)给出:

您好,可选(“全”)\n

打印(问候2)给出:

“你好,全\n”


有人能帮我解释一下差异背后的原因吗?谢谢

如果您的值是可选的(?),则表示不必有值(可以为空,并且没有错误)。如果您的
非可选值为空,则代码将失败。苹果公司有一篇关于这一点的文章:

这就是苹果对optionals的看法:

可选链接是查询和调用属性的过程, 方法和当前可能为nil的可选上的下标

在Swift引用中查找“可选绑定”。相关:,
var optionalname: String? = "QUAN"

let name1 = optionalname

var greeting1 = "Hello, \(name1)"

print(greeting1)

if let name2 = optionalname {
    var greeting2 = "Hello, \(name2)"
    print(greeting2)
}