如何搜索字符串数组并迅速返回特定值?

时间:2019-02-22 23:45:47

标签: arrays swift

我是Swift的新手,我正在尝试搜索字符串数组并返回特定值,例如,假设我要搜索我的数组并检查是否包含芒果,如果包含,那么我想打印出来。

var fruitArray: Array = ["Banana", "Apple", "Mango", "Strawberry", "blueberry"]
fruitArray.append("Orange")
for fruits in fruitArray{
    print(fruits)
}

2 个答案:

答案 0 :(得分:2)

您不需要自己遍历数组。

let searchTerm = "Mango"
if fruitArray.contains(searchTerm) {
    print(searchTerm)
}

答案 1 :(得分:1)

您可以使用集合的方法firstIndex(of:)查找集合上元素的索引并通过下标访问该元素,或者如果该元素的索引不相关,则可以使用first(where:)查找第一个与您的元素或您可能需要的任何谓词相匹配的元素:

var fruits = ["Banana", "Apple", "Mango", "Strawberry", "blueberry"]
fruits.append("Orange")

if let firstIndex = fruits.firstIndex(of: "Mango") {
    print(fruits[firstIndex])  // Mango
    // if you need to replace the fruit
    fruits[firstIndex] = "Grape"
    print(fruits) // "["Banana", "Apple", "Grape", "Strawberry", "blueberry", "Orange"]\n"
}

if let firstMatch = fruits.first(where: { $0.hasSuffix("go")}) {
    print(firstMatch)  // Mango
}