1
我有以下結構:檢查是否結構是在陣列
struct MyStrict {
let prop1: String
let prop2: [String: NSData]
let prop3: [String]
init (prop11: String, prop22: [String : NSData], prop33: [String]) {
prop1 = prop11
prop2 = prop22
prop3 = prop33
}
}
實例結構被放置在陣列。我需要做的是找出具有這些屬性的結構是否在陣列中。我需要比較數據。
事情是這樣的:
var arr = [MyStrict]()
var str1 = MyStrict(prop11: "test1", prop22: ["aa": NSData()], prop33: ["bb"])
arr.append(str1)
var str2 = MyStrict(prop11: "test2", prop22: ["bb": NSData()], prop33: ["cc"])
arr.append(str2)
var str3 = MyStrict(prop11: "test3", prop22: ["cc": NSData()], prop33: ["dd"])
arr.append(str3)
var str4 = MyStrict(prop11: "test1", prop22: ["aa": NSData()], prop33: ["bb"]) // has the same data as str1
arr.append(str4)
正如你可以看到str1
和str4
具有相同的數據。所以str4
不應該添加到數組中。
我的問題什麼是正確的方法來做到這一點?
或者只是'if contains(arr,str4)...' –
I編輯答案。包含更符合問題需求。 –