Dictionary<string, int> dic = new Dictionary<string, int>();
SortedDictionary를 사용하여 정렬할 수 있다.
SortedDictionary sorted_dic = new SortedDictionary(dic);
오름차순 정렬
foreach (KeyValuePair data in sorted_dic)
{
Console.WriteLine("문자열 : " + data.Key + ", 수치 : " + data.Value);
}
using System.Linq;
내림차순 정렬
foreach (KeyValuePair data in sorted_dic.Reverse())
{
Console.WriteLine("문자열 : " + data.Key + ", 수치 : " + data.Value);
}
열심히 정렬해본 결과 Value 기준이 아닌 Key 기준으로 정렬이 된다.
이걸 원한게 아니야 !!
==============================================
그래서 더 쉬운 방법을 찾아버렸다.
Dictionary<string, int> dic = new Dictionary<string, int>();
오름차순 정렬
var value_asc_dic = rank_dic.OrderBy(num => num.Value);
foreach (var data in value_asc_dic)
{
Console.WriteLine("문자열 : " + data.Key + ", 수치 : " + data.Value);
}
내림차순 정렬
var value_descend_dic = rank_dic.OrderByDescending(num => num.Value);
foreach (var data in value_descend_dic)
{
Console.WriteLine("문자열 : " + data.Key + ", 수치 : " + data.Value);
}
'Programming > c#' 카테고리의 다른 글
폼 전환 및 데이터 전송 (0) | 2021.04.28 |
---|---|
Guna UI2로 Login폼 만들기 (0) | 2021.04.26 |
비쥬얼스튜디오 Guna UI설치 (0) | 2021.04.26 |
서버와 클라이언트간 통신 [서버, 클라이언트 프로그램 만들기] (0) | 2017.08.31 |