Arrays 将值追加到一个索引中,并检查该索引是否包含重复的值

Arrays 将值追加到一个索引中,并检查该索引是否包含重复的值,arrays,swift,swift4,Arrays,Swift,Swift4,我将字符串附加到一个索引中。我无法检查该索引是否包含下一个附加的值 字符串的值根据用户输入而变化 如何检查元素数组是否已包含“value1” 假设我有这样的东西: var km: String = "1" var meters: String = "1000" var array: [String] = [] array.append(km + "Kilometers" + "=" + meters + "meters") if array.contains(km) { //do s

我将字符串附加到一个索引中。我无法检查该索引是否包含下一个附加的值

字符串的值根据用户输入而变化 如何检查元素数组是否已包含“value1”

假设我有这样的东西:

var km: String = "1"
var meters: String = "1000"

var array: [String] = []
array.append(km + "Kilometers" + "=" + meters + "meters")

if array.contains(km) {
    //do something
}
我想检查用户输入的下一个km值是否相同,如果它通知用户已经输入了km值。

您可以尝试

  func searchArr(arr:[String],sear:String) -> Bool
  {

    for str in arr
    {
        if let range = str.range(of: "K") {

            let subStr = str[str.startIndex...range.lowerBound]

            if subStr.range(of:sear) != nil {

                return true
            }

        }

    }

    return false
}

我想你想要这样的东西:

var km: String = "1"
var meters: String = "1000"

var array: [String] = []
array.append(km + "Kilometers" + "=" + meters + "meters")

if array.contains(km) {
    //do something
}
elements.reduce(false){$0 | |$1.contains(“value1”)}


因为您正在将数组缩减为布尔值

您已经用contains@Sh_Khan不,使用
包含的
将找不到任何内容。他可以搜索字符串content@rmaddy是的,它没有找到任何东西。“有办法吗?”汤姆你的问题不清楚。将文本字符串
“value1=value2”
附加到数组中。然后查看数组中是否有任何对象等于字符串
“value1”
。那当然不是真的。请提供一个更清楚的例子,说明你正在尝试做什么。这是非常低效的。即使第一个字符串匹配,您也将不必要地扫描整个数组。这是公平的,我只是喜欢使用这样的高级函数的快速性。考虑到更新问题的需要,这可能会产生误报。图像阵列包含
“10公里…”
,现在OP想要检查
“1”
公里是否已添加。