Swift 2.2 indexOf用于数组中的struct部分

paw*_*awi 0 arrays indexing struct swift

我只想找到包含结构中搜索项的结构数组的索引.与此类似:

struct Address{
    var name:String
    var town:String
}

var allAddresses = [Address]()
let newAddress = Address.init(name: "Paul", town: "Heidelberg")
allAddresses.append(newAddress)


//...
let found = allAddresses.name.indexOf("Paul")
//...
Run Code Online (Sandbox Code Playgroud)

但我明白了

错误:"[地址]"类型的值没有成员"名称"

这种方式有可能吗?迭代数组会给我带来其他问题!

vad*_*ian 9

您必须调用indexOf数组并使用谓词的闭包语法:

let found = allAddresses.indexOf { $0.name == "Paul" }
Run Code Online (Sandbox Code Playgroud)