有人可以向我解释“如果让”声明是什么?
我是新来的斯威夫特。我从来没有用Swift编码过。事实上,我所有的编码都是网站, HTML,CSS,Javascript。我正在寻找一个基本的,愚蠢的回答“if let
声明做什么?”我知道这可能听起来很蹩脚,但我已到处寻找,似乎无法找到足够的解释;甚至没有苹果网站。有人可以向我解释“如果让”声明是什么?
let x = y
声明一个新的常量x并将其初始化为y的值。 if let x = y
表示“如果y有一个非零值来初始化,则声明一个新的常量x,并初始化为该值”。
所以它的缩写:
if y != nil {
let x = y!
...
}
if let
是所谓的可选绑定。要理解它,你首先必须了解可选项。
可选是一个变量,可以包含一个值或零。
您使用问号声明可选变量:
var a:Int?
下面是一些代码使用可选的结合:
var string1: String?
if let string2 = string1 {
print("string2 = \(string2)")
}
的“如果让”表情说:“如果在等号的右边表达标志不是零,创建一个新的常量字符串2, 。拆开包装可选,并把它包含字符串值
通过上面的代码,没有什么会被打印,因为STRING1包含零
然而,与其他线之间:
var string1: String?
string1 = "foo"
if let string2 = string1 {
print("string2 = \(string2)")
}
然后执行print语句。
我建议下载Apple的Swift书并阅读介绍性章节。
谢谢大家的回答。我已经知道了,甚至不知道苹果有一本Swift的书。我只是在网站上阅读他们的东西。我已阅读了一些章节,现在它肯定有意义。再次感谢您的回答! –
您应该选择您认为最好的答案,然后单击复选标记以接受答案。 –
可选的是,可以保存一个值一箱。如果该框不为空(nil),那么'if let'语句将打开该框并将该框内的值赋予该可选项所持有的类型的变量。如果该框为空,则跳过“if let”后面的块。 – vacawama
苹果公司的“The Swift Programming Language”书中有哪些描述是你遇到的麻烦? – rmaddy
这是你阅读的苹果的确切部分吗? https://developer.apple.com/library/content/documentation/Swift/Conceptual/Swift_Programming_Language/OptionalChaining.html – Dallas