Dictionary nach Wert sortieren in C#
-
Sortieren eines Dictionaries nach Wert mit der List-Methode in
C#
-
Sortieren Sie das Dictionary nach Wert mit der Linq-Methode in
C#
In diesem Tutorial werden Methoden zum Sortieren eines DicDictionaries Wert in C# vorgestellt.
Sortieren eines Dictionaries nach Wert mit der List-Methode in C#
Die C# Dictionary-Datenstruktur speichert Daten in Form von Schlüssel: Wert
-Paaren. Leider gibt es keine integrierte Methode, um ein Dictionary nach Wert in C# zu sortieren. Wir müssen das Dictionary in eine Liste von Tupeln konvertieren und dann die Liste sortieren. Das folgende Codebeispiel zeigt, wie Sie ein Dictionary nach Wert mit einer Liste in C# sortieren.
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);
}
}
}
}
Ausgabe:
[one, 1]
[two, 2]
[three, 3]
[four, 4]
Wir haben das Dictionary myDict
erstellt und nach dem ganzzahligen Wert sortiert. Wir haben zuerst das myDict
mit der Funktion ToList()
in C# in die Liste der Tupel myList
konvertiert. Wir haben dann die myList
mit Linq sortiert und die Werte angezeigt.
Sortieren Sie das Dictionary nach Wert mit der Linq-Methode in C#
Wir können ein Dictionary auch direkt nach Wert sortieren, ohne es zuerst in eine Liste zu konvertieren. Die Linq - oder sprachintegrierte Abfrage wird verwendet, um SQL-ähnliche Abfragen in C# auszuführen. Wir können Linq verwenden, um ein Dictionary nach Wert zu sortieren. Das folgende Codebeispiel zeigt, wie Sie ein Dictionary mit Linq in C# nach Wert sortieren.
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);
}
}
}
}
Ausgabe:
[one, 1]
[two, 2]
[three, 3]
[four, 4]
Wir haben das Dictionary myDict
erstellt und es mit Linq in C# nach dem ganzzahligen Wert sortiert. Wir haben das sortierte Dictionary in sortedDict
gespeichert und die Werte angezeigt.
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