我如何在swift 2.1中写这个?
我正在浏览斯坦福大学的C193快速编程课程,而且我正在使用swift 2.1。
我希望用户在显示器上显示操作数和操作历史记录。
它给了我这个错误:
"对成员的不明确的引用' map'。
func showStack() -> String? {
return .joinWithSeparator(opStack.map { "\($0)" })
}
答案 0 :(得分:1)
您无法将.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
应用于它(新的Apple Swift 2文档中解释了“joinWithSeparator”方法)。