Versuchen, ein NSMutableDictionary in Swift 3 zu sortieren, Code aus Swift 2 funktioniert nicht mehr für mich (verschiedene Fehler).Sortierung Wörterbuch in Swift 3
Ich versuche, den folgenden Code zu verwenden, um meine Wörterbuch durch ihre Werte zu sortieren, die Schwimmer sind:
var sortedDict = unsortedDict.allValues.sorted({ $0 < $1 }).flatMap({ floatedlotterydictionary[$0] })
Im Wesentlichen Ich möchte diese unsortiert Wörterbuch ...
{
a = "1.7";
b = "0.08";
c = "1.4";
}
.. .to in dieses sortierte Wörterbuch ...
{
b = "0.08";
c = "1.4";
a = "1.7";
}
Aber die Verwendung dieser Codezeile von oben gibt die zurück Fehler "Argumenttyp AnyObject entspricht nicht dem Typ NSCopying" für den $0 < $1
Teil. Wie kann ich ein Wörterbuch anhand seiner Werte in Swift 3 sortieren?
(Hinweis: Diese Zeile Code kam teilweise aus this answer.)
I Swift 3 in Xcode 8 Beta 1 verwenden.
Ein Wörterbuch ist per definitionem ungeordnet. Es ist unmöglich, das gewünschte Ergebnis als Wörterbuch zu erhalten. Und benutze 'NSMutableDictionary' nicht in Swift. Es ist überhaupt nicht verwandt mit dem Swift 'Dictionary'. – vadian
Und ja, ich verstehe, ein Wörterbuch ist ungeordnet ... aber ich will es bestellt;). Und obwohl es nicht verwandt ist, was ist daran falsch? – owlswipe