Necesito ordenar un diccionario en VB.net basado en las teclas. Las claves y los valores son todas las cadenas. El diccionario no tiene un .Sort()
. ¿Hay alguna forma de hacerlo sin tener que escribir mi propio algoritmo de clasificación?Diccionario de clasificación basado en las claves
Respuesta
SortedDictionary me viene a la mente, pero se ordena solo en la tecla.
De lo contrario, esta respuesta podría ayudar How do you sort a C# dictionary by value?.
SortedDictionary parece que debería funcionar. Gracias – user489041
Exactamente en el trabajo vb.net este código:
Dim myDict As New Dictionary(Of String, String)
myDict.Add("one", 1)
myDict.Add("four", 4)
myDict.Add("two", 2)
myDict.Add("three", 3)
Dim sortedDict = (From entry In myDict Order By entry.Value Ascending).ToDictionary(Function(pair) pair.Key, Function(pair) pair.Value)
For Each entry As KeyValuePair(Of String, String) In sortedDict
Console.WriteLine(String.Format("{0,10} {1,10}", entry.Key, entry.Value))
Next
Creo que quería 'Order By entry.Key' not' entry.Value' basado en las ediciones de OP. –
Para entry.Key podemos usar SortedDictionary sin ninguna expresión LINQ – apros
Si necesita retener el diccionario subyacente y no utilizar un SortedDictionary, se puede utilizar LINQ para devolver un IEnumerable con sede fuera de lo que cada vez que necesita criterios :
Dim sorted = From item In items
Order By item.Key
Select item.Value
el SortedDictionary probablemente dar más rendimiento en el uso repetido sin embargo, siempre y cuando no se necesita invertir ese tipo en algún momento en el futuro.
- 1. Ordenación de las claves de diccionario basado en sus valores
- 2. Cómo filtrar claves de diccionario basado en sus valores correspondientes
- 3. Clasificación del diccionario de Python basado en valores de diccionario anidados
- 4. Objective-C: claves de clasificación de NSDictionary basadas en entradas de diccionario
- 5. Algoritmo de clasificación basado en comparación
- 6. orden de las claves en el diccionario de Python
- 7. cambiar las claves y valores en un diccionario en Python
- 8. ¿Enumerar claves en un diccionario?
- 9. Diccionario con claves en Unicode
- 10. inserte o actualice las claves en un diccionario python
- 11. ¿En qué orden muestra Python las claves del diccionario?
- 12. Valores Confirmando todas las claves en un diccionario han poblado
- 13. Diccionario basado en disco de Python
- 14. Clasificar claves del diccionario en python
- 15. Diccionario de Python con variables como claves
- 16. Ordenar varias claves con clasificación de Unix
- 17. crear diccionario con claves duplicadas en python
- 18. Cocoa: ¿diccionario con claves enum?
- 19. json.net: convertidor para especificar claves de diccionario
- 20. python: ¿claves de unión de diccionario múltiple?
- 21. ¿Es posible tomar un "segmento" ordenado de un diccionario en Python basado en una lista de claves?
- 22. claves de diccionario Generación sobre la marcha
- 23. Clasificación natural de matriz de PHP en reversa y no preservar las claves
- 24. Clasificación: Ordenar un array basado en múltiples condiciones en Ruby
- 25. ¿Cómo obtengo la lista de claves en un diccionario?
- 26. ¿Alternativa al diccionario con claves enum?
- 27. Imprimir un subconjunto particular de claves en un diccionario
- 28. dividir un diccionario en python en claves y valores
- 29. Cómo obtener todas las claves (solo las claves) del objeto del diccionario sin pasar por cada ciclo
- 30. ordena las claves de NSDictionary por valor de diccionario en un NSArray
¿Qué significa "ordenar un diccionario" para usted? – jason
Lo modifiqué para aclarar eso, pero fue editado. Necesito ordenar el diccionario basado en las llaves. – user489041
No, mira, todavía no dijiste lo que quieres decir con "ordenar un diccionario". Decirme que lo quiere basado en las claves no explica lo que significa para usted "ordenar un diccionario". – jason