【发布时间】:2015-09-21 08:39:59
【问题描述】:
当我将 swift 1.2 升级到 swift 2.0 时出现以下错误
不能用类型参数列表调用reduce
这里是代码
let escaped = reduce(string, "") { string, character in
string + (character == mark ? "\(mark)\(mark)" : "\(character)")
你能帮我解决这个问题吗
【问题讨论】:
当我将 swift 1.2 升级到 swift 2.0 时出现以下错误
不能用类型参数列表调用reduce
这里是代码
let escaped = reduce(string, "") { string, character in
string + (character == mark ? "\(mark)\(mark)" : "\(character)")
你能帮我解决这个问题吗
【问题讨论】:
reduce() 是一种用于数组等集合的方法,因此您必须在可以使用字符串的characters 属性访问的字符列表上调用它,而不是在整个字符串本身上调用它:
let escaped = string.characters.reduce("") { string, character in
string + (character == mark ? "\(mark)\(mark)" : "\(character)")
}
【讨论】: