📜  检查字符串数组中的字符串 swift (1)

📅  最后修改于: 2023-12-03 14:55:45.666000             🧑  作者: Mango

检查字符串数组中的字符串 - Swift

在 Swift 中,检查字符串数组中的字符串可以采用多种方法,具体取决于您要查找什么类型的字符串以及要查找多少个字符串。下面详细介绍 Swift 中可用的一些方法。

方法一:使用 for 循环依次比较字符串
let stringArray = ["apple", "banana", "orange"]

func containsString(stringToFind: String, arrayOfStrings: [String]) -> Bool {
    for string in arrayOfStrings {
        if string == stringToFind {
            return true
        }
    }
    return false
}

// Example usage:
let contains = containsString(stringToFind: "banana", arrayOfStrings: stringArray)
// contains = true

以上代码定义了一个函数 containsString,此函数采用字符串数组和要查找的字符串作为参数,然后使用 for 循环逐个比较所有字符串。 如果找到匹配的字符串,则返回 true,否则返回 false。在上面的示例中,字符串 "banana" 将被找到并返回 true。

方法二:使用 contains() 函数
let stringArray = ["apple", "banana", "orange"]

let contains = stringArray.contains("banana")
// contains = true

在 Swift 中,每个数组都有一个 contains() 函数,该函数可用于检查特定元素是否存在于数组中。代码示例中,数组中的 contains() 函数将被调用并传递要查找的字符串"banana"作为参数。在这个例子中,返回 true。

方法三:使用 filter() 函数
let stringArray = ["apple", "banana", "orange"]

let filteredArray = stringArray.filter { $0 == "banana" }
// filteredArray = ["banana"]

在 Swift 中,每个数组也都有一个 filter() 函数,用于根据特定条件对数组中的元素进行筛选。在示例中,filter() 接受一个闭包,该闭包将在数组中的每个元素上运行并返回一个布尔值,表示该元素是否应包含在筛选后的结果中。在本例中,闭包将比较字符串的值,如果字符串值与要查找的字符串 "banana" 相等,则该元素将包含在筛选结果中。

方法四:使用 firstIndex() 函数
let stringArray = ["apple", "banana", "orange"]

if let index = stringArray.firstIndex(of: "banana") {
    print(index)
} else {
    print("Not found")
}

在 Swift 中,每个数组也都有一个 firstIndex() 函数,该函数可用于到达数组中特定元素第一次出现的索引。如果未找到该元素,则函数将返回 nil。在本例中,firstIndex() 被调用,字符串 "banana" 作为参数传递。如果存在于数组中,则打印它的索引,否则打印 "Not found"。

在 Swift 中,检查字符串数组的方法有很多,其中一些已经在上面的例子中介绍了。希望这篇文章能够帮助您选择适合您的方案。