Cercando di ordinare NSMutableDictionary in Swift 3, il codice di Swift 2 non funziona più per me (vari errori).Ordinamento dizionario in Swift 3
Sto cercando di utilizzare il seguente codice per ordinare il mio dizionario con i suoi valori, che sono galleggianti:
var sortedDict = unsortedDict.allValues.sorted({ $0 < $1 }).flatMap({ floatedlotterydictionary[$0] })
In sostanza, voglio questo dizionario non differenziati ...
{
a = "1.7";
b = "0.08";
c = "1.4";
}
.. per trasformarsi in questo dizionario ordinato ...
{
b = "0.08";
c = "1.4";
a = "1.7";
}
Ma usare quella riga di codice dall'alto restituisce il errore "argomento tipo anyobject non è conforme al tipo NSCopying" per la parte $0 < $1
. Quindi, come posso ordinare un dizionario in base ai suoi valori in Swift 3?
(Nota: questa riga di codice è venuto in parte dal this answer.)
Sto usando Swift 3 in Xcode 8 beta 1.
Un dizionario è non ordinato per definizione. È impossibile ottenere il risultato richiesto come dizionario. E non usare "NSMutableDictionary" in Swift. Non è affatto correlato al "dizionario" di Swift. – vadian
E sì, ho capito che un dizionario non è ordinato ... ma lo voglio ordinato;). E anche se è in qualche modo non correlato, cosa c'è di sbagliato in questo? – owlswipe