删除键的命令,包含字典数组的Dictionary

时间:2018-06-14 15:57:36

标签: swift nsmutabledictionary

我的词典保存此对象

class packet: NSObject {
    var time: Double?
    var msgID: Int?
    var hul : String?
    init(time : Double, msgID : Int, hul : String){
        super.init()
        self. time = time
        self.msgID = msgID
        self.hul = hul
    }
}

这是我的字典

var ObjectDictionary : NSMutableDictionary = [:]

这是字典setValue就像这样

let obj = packet(time : Date().timeIntervalSince1970, msgID : msgID, hul: hul)
ObjectDictionary.setValue(obj, forKey: String(msgID))

现在我如何删除对象字典中的所有值 hul ==" SomeString"

希望我能解释这个问题。

由于

1 个答案:

答案 0 :(得分:4)

使用Swift词典,而不是NSMutableDictionary,并调用filter

var d = [String:Packet]()
// ... put stuff into the dictionary here ...
let d2 = d.filter{$0.value.hul != "SomeString"}

注意:我用Packet替换了您的类型名称packet。类型名称应以Swift中的大写字母开头。