Ich habe NSDictionary, ich weiß, es hat nur einen Schlüssel und einen Wert, wie kann ich direkt den ersten Wert davon bekommen?Swift iOS 8, erster Wert von NSDictionary
Dank,
Ich habe NSDictionary, ich weiß, es hat nur einen Schlüssel und einen Wert, wie kann ich direkt den ersten Wert davon bekommen?Swift iOS 8, erster Wert von NSDictionary
Dank,
Wenn Sie einen Swift haben Dictionary
und Sie wissen, Sie haben genau 1 Schlüssel/Wert-Paar Sie dies tun können:
var dict = ["aaa":"bbb"]
let v = dict.values.first!
Wenn Sie mehr als ein Schlüssel/Wert-Paar haben, gibt es keinen "ersten" Wert, da Wörterbücher nicht geordnet sind. Wenn Sie keine Schlüssel/Wert-Paare haben, stürzt diese ab.
Wenn Sie eine NSDictionary
haben, können Sie allValues.first!
verwenden, aber Sie werden das Ergebnis werfen müssen, weil der Wert wird eine AnyObject
sein:
var dict:NSDictionary = ["aaa":"bbb"]
let v = dict.allValues.first! as! String
oder:
let v = dict.allValues[0] as! String
Cast einen Swift Wörterbuch, wenn es nicht ein ohnehin schon ist. Dann nutzen Sie die values
Eigenschaft, zu einem Array geworfen und bekommt Index 0.
let v = Array(myDictionary.values)[0]
Seien Sie gewarnt, Wenn Sie jedoch mehr als ein Schlüssel/Wert-Paar haben, gibt es keinen "ersten Wert" - ein Wörterbuch ist ungeordnet. Dieser Trick funktioniert nur, weil Sie sicher wissen, dass der "count" 1 ist. – matt
'lassen Sie v = dict.values.first!' – vacawama
@vacawama Gehen Sie voran und geben Sie das als Antwort! Ausgezeichnet. – matt
es funktioniert, danke! – PatrickFeng