簡體   English   中英

檢查NSMutableArray是否包含給定值

[英]Check if NSMutableArray contains a given value

我有一個包含String值的NSMutableArray 我有一個String變量,我想檢查它是否包含在數組中。

我嘗試將.contains()與String一起使用,但它說:

無法將字符串類型的值轉換為預期的參數類型...

var mutableArray = NSMutableArray()  // ["abc", "123"]
var string = "abc"

mutableArray.contains("abc") {       // above error in this line

}

檢查NSMutableArray元素是否存在的多種方法。

if mutableArray.contains("abc")  
    print("found")  
else  
    print("not found")  

要么

if contains(mutableArray, "abc")   
    print("found")  

要么

if mutableArray.indexOfObject("abc") != NSNotFound
  print("found")  

如果想根據swift版本檢查元素的存在

SWIFT1

if let index = find(mutableArray, "abc")  
    print(index)

迅捷2

if let index = mutableArray.indexOf("abc")  
    print(index)

我仍然不明白為什么您不能使用本機Swift數組,但是可以。

兩種方法都可以使用

let contains = mutableArray.contains { $0 as? String == "abc" }

要么

let contains = mutableArray.containsObject("abc")

要么

let contains = mutableArray.indexOfObject("abc") != NSNotFound

如果您將使用本機數組,則只需

var array = ["123", "abc"]
let contains = array.contains("abc")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM