我有一个数组:
var swiftBlogs:[Message] = [Message]()
我想找一些对象的索引号。我尝试了以下代码:
let mm=Message()
swiftBlogs.indexOf(mm)
但我收到了编译错误:
Cannot convert value of type 'Message' to expected argument type '@noescape (Message) throws -> Bool'
我该如何解决这个问题?
答案 0 :(得分:0)
class Message {
var id: Int
init(id: Int) {
self.id = id
}
}
var arr: [Message] = []
arr.append(Message(id: 1))
arr.append(Message(id: 2))
arr.append(Message(id: 3))
print(arr.indexOf { $0.id == 2 }) // Optional(1)
检查声明!!
.indexOf(谓词:(消息)抛出 - > Bool)
答案 1 :(得分:0)
对于Swift 3来说:
myArray.index{$0 === myMessage}
它返回一个Optional。