繁体   English   中英

在数组数组中查找值

[英]Finding a value in an array of arrays

我有以下格式的数组

var persons : [[String]] = []

let blah : [String] = [title, firstName, lastName, address1, town, postCode]

persons.append(blah)

给出如下输出:

[
   ["Mr", "Joe", "Bloggs", "999 Letsbe Avenue", "Townsville", "TS12 9UY"],
   ["Mr", "Peter", "Smith", "999 Underavest", "CityVille", "OP19 1IK"]
]

我想进行搜索以查找“史密斯”的首次出现,但是我对如何做到这一点感到困惑。

有什么帮助吗?

你可以试试

if let index = persons.index(where:{ $0.contains("Smith")  }) { 
     print(index)  
}

顺便说一句,最好有

 struct Person {
    let fname,lname,address:String
 }

你可以做这样的事情

let array = [
       ["Mr", "Joe", "Bloggs", "999 Letsbe Avenue", "Townsville", "TS12 9UY"],
       ["Mr", "Peter", "Smith", "999 Underavest", "CityVille", "OP19 1IK"]
    ]

    var index = array.flatMap { $0 }.firstIndex(of: "Smith")
    print("\(index!/5)")
     index = array.flatMap { $0 }.firstIndex(of: "Bloggs")
    print("\(index!/5)")

我花了5个来查找索引,因为每个数组中有5个条目。

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM