Trier le dictionnaire par valeur en C#
-
Trier le dictionnaire par valeur avec la méthode List en
C#
-
Trier le dictionnaire par valeur avec la méthode Linq en
C#
Ce didacticiel présentera des méthodes pour trier un dictionnaire par valeur en C#.
Trier le dictionnaire par valeur avec la méthode List en C#
Le C# structure de données du dictionnaire stocke les données sous la forme de paires clé: valeur
. Malheureusement, il n’existe pas de méthode intégrée pour trier un dictionnaire par valeur en C#. Nous devons convertir le dictionnaire en une liste de tuples, puis trier la liste. L’exemple de code suivant nous montre comment trier un dictionnaire par valeur avec une liste en C#.
using System;
using System.Collections.Generic;
using System.Linq;
namespace sort_dictionary_by_value {
class Program {
static void Main(string[] args) {
Dictionary<string, int> myDict = new Dictionary<string, int>();
myDict.Add("one", 1);
myDict.Add("four", 4);
myDict.Add("two", 2);
myDict.Add("three", 3);
var myList = myDict.ToList();
myList.Sort((pair1, pair2) => pair1.Value.CompareTo(pair2.Value));
foreach (var value in myList) {
Console.WriteLine(value);
}
}
}
}
Production:
[one, 1]
[two, 2]
[three, 3]
[four, 4]
Nous avons créé le dictionnaire myDict
et l’avons trié par valeur entière. Nous avons d’abord converti le myDict
en liste de tuples myList
avec la fonction ToList()
en C#. Nous avons ensuite trié la myList
avec Linq et affiché les valeurs.
Trier le dictionnaire par valeur avec la méthode Linq en C#
Nous pouvons également trier directement un dictionnaire par valeur sans d’abord le convertir en liste. La requête intégrée Linq ou langage est utilisée pour effectuer des requêtes de type SQL en C#. Nous pouvons utiliser Linq pour trier un dictionnaire par valeur. L’exemple de code suivant nous montre comment trier un dictionnaire par valeur avec Linq en C#.
using System;
using System.Collections.Generic;
using System.Linq;
namespace sort_dictionary_by_value {
class Program {
static void Main(string[] args) {
Dictionary<string, int> myDict = new Dictionary<string, int>();
myDict.Add("one", 1);
myDict.Add("four", 4);
myDict.Add("two", 2);
myDict.Add("three", 3);
var sortedDict = from entry in myDict orderby entry.Value ascending select entry;
foreach (var value in sortedDict) {
Console.WriteLine(value);
}
}
}
}
Production:
[one, 1]
[two, 2]
[three, 3]
[four, 4]
Nous avons créé le dictionnaire myDict
et l’avons trié par valeur entière avec Linq en C#. Nous avons stocké le dictionnaire trié dans sortedDict
et affiché les valeurs.
Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.
LinkedIn