我如何在 swift 2.1 中编写这个?
我正在学习斯坦福的 C193 快速编程课程,我正在使用 swift 2.1。
我想向用户显示计算器上的操作数和操作的历史记录。
它给了我这个错误:
“对成员‘地图’的模糊引用。
func showStack() -> String? {
return .joinWithSeparator(opStack.map { "\($0)" })
}
您不能.joinWithSeparator
什么都不适用,它必须用于集合(例如数组)。并且opStack.map { "\($0)" }
不会成为一个好的分隔符。
Swift 1.2 版本是:
func showStack() -> String? {
return " ".join(opStack.map{ "\($0)" })
}
Swift 2 版本是:
func showStack() -> String? {
return opStack.map{ "\($0)" }.joinWithSeparator(" ")
}
您只需提取opStack.map{ "\($0)" }
并应用joinWithSeparator
它(“joinWithSeparator”方法在新的 Apple Swift 2 文档中进行了说明)。