0
雨燕3.0的iOS 10.x的SwiftyJSON在SwiftyJSON陣列刪除字典記錄
我已經字典對象的SwiftyJSON陣列看起來像這樣...
[
{
"figure" : 1326,
"account" : "Charles"
}
{
"figure" : 2361,
"account" : "James"
}
]
我想刪除的記錄其中屬於「詹姆斯」,我想出了這個代碼。 jsonObjects包含你在上面看到的數組。
var json2S = sharedDataAccess.jsonObjects
for json2DX in 0..<json2S.count {
var delIndex: Int? = nil
for (jsonK, subJson) in sharedDataAccess.jsonObjects[json2DX] {
print("json2D \(jsonK) \(subJson.stringValue) \(Name)")
if jsonK == "account" && subJson.stringValue != Name {
delIndex = json2DX
print("DELETE IT \(jsonK) \(subJson.stringValue) \(Name)")
}
}
if delIndex != nil {
json2S[0].arrayObject?.remove(at: delIndex!)
print("DELETING IT \(delIndex) \(Name)")
}
}
sharedDataAccess.jsonObjects = JSON(json2S)
它的工作,但不是我希望的方式。它刪除了James [假設Name變量包含James],但它使我留下了這個。
[
null,
{
"figure" : 1326,
"account" : "Charles"
}
]
詹姆斯被替換爲空......空我不想,我怎麼能刪除條目,但沒有得到一個空或確實只是刪除空太!
基本上不要誤用SwiftJSON作爲集合類型。 SwiftyJSON將'nil'值視爲'NSNull'就像JSON一樣。將JSON解析爲標準集合類型「Array」和「Dictionary」並更改它們。 – vadian
公平點;我會重新編碼這個。 – user3069232