Ho un array che contiene dizionari in esso; quindi, come posso ordinare l'array in base ai valori della chiave del dizionario?Come ordinare un array che contiene dizionari?
risposta
Se ogni elemento dell'array è un dizionario contenente un determinato tasto, è possibile ordinare l'array utilizzando un descrittore di ordinamento. Per esempio, se ogni elemento è un dizionario contenente una chiave chiamata "nome":
NSSortDescriptor *sortByName = [NSSortDescriptor sortDescriptorWithKey:@"name"
ascending:YES];
NSArray *sortDescriptors = [NSArray arrayWithObject:sortByName];
NSArray *sortedArray = [array sortedArrayUsingDescriptors:sortDescriptors];
come ordinare il valore int? –
perché non si utilizza un dizionario ordinato in cui la proprietà di elementi ordinati viene già con la struttura dati?
Si prega di controllare fuori here
Spero che questo aiuti.
La risposta di cui sopra condivisa da Bavarious aiutato me.Just vuole aggiungere un altro thing.If si desidera ordinare un uso serie mutabile qualcosa come il codice qui sotto
NSSortDescriptor *sortByName = [NSSortDescriptor sortDescriptorWithKey:@"name" ascending:YES];
NSArray *sortDescriptors = [NSArray arrayWithObject:sortByName];
NSMutableArray *sortedArray = [[NSMutableArray sortedArrayUsingDescriptors:sortDescriptors]mutableCopy];
l'altro modo per raggiungere questo sarebbe utilizzando sortedArrayUsingComparator:
metodo
NSArray *sortedArray = [array sortedArrayUsingComparator:^NSComparisonResult(id obj1, id obj2) {
return [[obj1 valueForKey:@"value"] compare:[obj2 valueForKey:@"value"]];
}];
let arrDescriptor = NSSortDescriptor(key: "order", ascending: true)
let sortDescriptors: NSArray = [arrDescriptor]
let sortedArray = instancesubArray.sortedArray(using: sortDescriptors as [AnyObject] as [AnyObject] as! [NSSortDescriptor])
print(sortedArray)
Utilizzare il collegamento [modifica] per spiegare come funziona questo codice e non solo fornire il codice, poiché una spiegazione è più probabile che aiuti i futuri lettori. Vedi anche [risposta]. –
- 1. Come ordinare un array (associativo) per valore?
- 2. Come ordinare un array di strutture
- 3. Come ordinare un array in JavaScript
- 4. Array di filtri con dizionari utilizzando NSPredicate
- 5. Array di dizionari in C#
- 6. copy_to_user una struct che contiene un array (puntatore)
- 7. come ordinare un ArrayList bidimensionale
- 8. Come posso ordinare un TList in Delphi su una proprietà arbitraria degli oggetti che contiene?
- 9. Utilizzando Javascript per ordinare un array di array numerici
- 10. Come ordinare un SplFixedArray?
- 11. Ordinare un array int con orderby
- 12. Sort Swift Array of Dizionari per valore di una chiave
- 13. python map array di dizionari per dizionario?
- 14. Rails Kaminari - Come ordinare/impaginare gli array?
- 15. Convertire un array di byte a una classe che contiene un array di byte in C#
- 16. Come ordinare un array di interi e stringhe?
- 17. Come ordinare un array usando il numero minimo di scritture?
- 18. sorta array in DISC ordinare
- 19. Come ordinare un array di data in PHP
- 20. Ordinamento di un array con le stringhe che contiene i numeri
- 21. ordinare gli oggetti in Array Data
- 22. come ordinare un array JavaScript di oggetti per data
- 23. Ordinare un array con caratteri speciali come accenti
- 24. Filtro un NSArray che contiene oggetti personalizzati
- 25. Swift - Salva Array di dizionari in NSUserDefaults
- 26. lista Scala contiene vs array contiene
- 27. Python: come ordinare un elenco di dizionari in base a diversi valori?
- 28. Come ordinare un vettore STL?
- 29. Come posso ordinare un NSDictionary?
- 30. Come salvare dizionari e array nello stesso archivio (con numpy.savez)
questa domanda è presente in Stackoverflow http://stackoverflow.com/questions/4767219/how-to-sort-a-nsarray-which-contains-nsdictionary/4767282#4767282 –