gpt4 book ai didi

swift - 如何在 Swift 2 中避免多个 if let 语句

转载 作者:行者123 更新时间:2023-11-28 10:22:23 26 4
gpt4 key购买 nike

我从 swift 着手,试图让我的代码简洁。

我有一个自定义的 init 方法

var title, initMainText, initBtnTitle: String?

...

init(title: String?, mainText: String?, buttonTitle: String?) {
if let t = title {
self.title = t
}
if let t = mainText {
self.initMainText = t
}
if let t = buttonTitle {
self.initBtnTitle = t
}
...
}

...

是否有更简洁的方法来解包所有这些条件?

最佳答案

有几种解决方法:

  • 守卫
  • 多个 let/var 在同一个 if
  • 具有默认值的参数
  • 三元条件运算符
  • 无合并运算符
  • 不要在 init 中接受可选参数(如 nhgrif 所建议)

看你的例子似乎

  • self.title
  • self.initMainText
  • self.initBtnTitle

是可选的,所以你可以简单地写:

init(title: String?, mainText: String?, buttonTitle: String?) {
self.title = title
self.initMainText = mainText
self.initBtnTitle = buttonTitle
...
}

关于swift - 如何在 Swift 2 中避免多个 if let 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33054422/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com