C#에서 값으로 사전 정렬
이 자습서에서는 C#에서 값별로 사전을 정렬하는 방법을 소개합니다.
C#의 List 메서드를 사용하여 값으로 사전 정렬
C# 사전 데이터 구조는key:value
쌍 형식으로 데이터를 저장합니다. 안타깝게도 C#의 값을 기준으로 사전을 정렬하는 기본 제공 방법이 없습니다. 사전을 튜플 목록으로 변환 한 다음 목록을 정렬해야합니다. 다음 코드 예제는 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);
}
}
}
}
출력:
[one, 1]
[two, 2]
[three, 3]
[four, 4]
myDict
사전을 만들고 정수 값으로 정렬했습니다. 먼저myDict
를 C#의ToList()
함수를 사용하여myList
튜플 목록으로 변환했습니다. 그런 다음 Linq로myList
를 정렬하고 값을 표시했습니다.
C#의 Linq 메서드를 사용하여 값으로 사전 정렬
사전을 목록으로 먼저 변환하지 않고 값별로 직접 정렬 할 수도 있습니다. Linq 또는 언어 통합 쿼리는 C#에서 SQL과 유사한 쿼리를 수행하는 데 사용됩니다. Linq를 사용하여 값별로 사전을 정렬 할 수 있습니다. 다음 코드 예제는 C#에서 Linq를 사용하여 값별로 사전을 정렬하는 방법을 보여줍니다.
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);
}
}
}
}
출력:
[one, 1]
[two, 2]
[three, 3]
[four, 4]
myDict
사전을 만들고 C#의 Linq를 사용하여 정수 값으로 정렬했습니다. 정렬 된 사전을sortedDict
에 저장하고 값을 표시했습니다.
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