注意:这也适用于
Swift 3.0
当我尝试使用reduce函数时,我收到一条错误消息:
reduce is unavailable: call the ‘reduce()’ method on the sequence
我已经知道如何使用enumerate()函数执行此操作,但我似乎无法解决此问题.这是返回错误的代码行:
var hashValue: Int {
return reduce(blocks,0) { $0.hashValue ^ $1.hashValue }
}
你修复它的
方法与使用enumerate()修复问题的
方法相同.在Swift 2中,reduce已作为全局
函数被
删除,并已作为实例
方法添加到通过协议扩展符合SequenceType协议的所有对象上.
用法如下.
var hashValue: Int {
return blocks.reduce(0) { $0.hashValue ^ $1.hashValue }
}
原文链接:https://www.f2er.com/swift/318980.html