Chcę usunąć parę klucz-wartość ze słownika, jak w przykładzie, jeśli to możliwe.
var dict: Dictionary<String,String> = [:]
var willRemoveKey = "SomeKey"
dict.removePair(willRemoveKey) //that's what I need
Chcę usunąć parę klucz-wartość ze słownika, jak w przykładzie, jeśli to możliwe.
var dict: Dictionary<String,String> = [:]
var willRemoveKey = "SomeKey"
dict.removePair(willRemoveKey) //that's what I need
Odpowiedzi:
Możesz użyć tego:
dict[willRemoveKey] = nil
albo to:
dict.removeValueForKey(willRemoveKey)
Jedyna różnica polega na tym, że druga zwróci usuniętą wartość (lub zero, jeśli nie istniała)
dict.removeValue(forKey: willRemoveKey)
nil
zawsze usuwał klucz. Aby przypisać prawdziwą nil
wartość w słowniku z opcjonalnym Typem wartości, przypisz .some(nil)
.
Usuń, sprawdzając warunki w pętli
var eventDateDict = [String:String]()
//Declarations
var tempDict = eventDateDict
for value in tempDict{
let getDate = value.key
if getDate < Date(){
eventDateDict.removeValue(forKey: value.key)
}
}
dict.removeValue(willRemoveKey)
ponieważ wygląda na to, że nazwa .removeValueForKey została zmieniona - dzięki za pomoc!