0

你能建议如何清理这个可憎的东西吗

func restartLastSession(let extra : String?)
{
    let rescopes  = NSMutableArray(array: [ "restart" ])
    if(extra != nil && !(extra?.isEmpty)!) {
        rescopes.addObject(extra!)
    }

变成了

func restartLastSession(let extra_ : String?)
{
    let rescopes  = NSMutableArray(array: [ "restart" ])
    if let extra = extra_ where !extra.isEmpty {
        rescopes.addObject(extra)
    }

感谢 Eric D,他不允许我阅读 swift 书的可选章节,我想这已经解决了,没有任何规定可以为 Eric 的业力贡献 +10 ;-)

4

1 回答 1

1

通过删除不必要的关键字(例如let)和使用真正的 Swift 数组来简化。

func restartLastSession(extra: String?) {
  var rescopes = ["restart"]   
  if extra?.characters.count > 0 { rescopes.append(extra!) }

  // do something else with rescopes before returning, else it will be discarded
}
于 2016-03-26T19:31:37.193 回答