[C# 문법] Dictionary 컬렉션 정렬하는 방법


안녕하세요~~

 

오늘은 저번에 C# 문법에서 Dictionary 컬렉션 사용하는 방법에 대해서 알아 보았는데요!

 

오늘은 Dictionary 객체를 정렬하는 방법에 대해서 알려드리고자 해요!

 

정렬하는 방법은 매우 간단하기 때문에 별도의 설명 없이 코드와 주석을 통하여 바로 이해가 가능할 거에요ㅎㅎ


그럼 바로 예제 코드를 작성해 보겠습니다!


소스코드


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

 

namespace Test

{

    class Program

    {

        static void Main(string[] args)

        {

            //Dictionary 객체 생성 Key 자료형 string, Value 자료형 int

            Dictionary<stringint> dic = new Dictionary<stringint>();

 

            //Dictionary 객체에 사용자가 원하는 데이터 저장

            dic.Add("범범조조"27);

            dic.Add("프로그래머"28);

            dic.Add("사자"20);

            dic.Add("호랑이"12);

            dic.Add("펭귄"25);

            dic.Add("악어"15);

 

            //Dictionary 정렬

            //dic 객체에 저장되어 있는 Value값들을 기준으로 오름차순정렬

            var queryAsc = dic.OrderBy(x => x.Value);

 

        

            Console.WriteLine("-----------------------오름차순 정렬----------------------");

            foreach (var dictionary in queryAsc)

            {

                Console.WriteLine("정렬된 순서 Key : {0} , Value : {1}",

 dictionary.Key, dictionary.Value);

            }

 

 

            Console.WriteLine("-----------------------내림차순 정렬----------------------");

            //dic 객체에 저장되어 있는 Value값들을 기준으로 내림차순정렬

            var queryDesc = dic.OrderByDescending(x => x.Value);

 

            foreach (var dictionary in queryDesc)

            {

                Console.WriteLine("정렬된 순서 Key : {0} , Value : {1}"

dictionary.Key, dictionary.Value);

            }

        }

    }

}

 

Colored by Color Scripter

cs


실행 결과



 

간단히 설명 드리자면, Dictionary 객체를 선언하여 해당 객체 안에 데이터를 제 임의대로 저장을 하였습니다


그리고 해당 데이터를 이제 Value값 기준으로 정렬을 시켜 보았는데요!

 

여기서 중요한 부분은 dic.OrderBy(x => x.Value) , dic.OrderByDescending(x => x.Value) 이 부분입니다.

 

위의 OrderBy, OrderByDescending 메서드를 사용해서 오름차순으로 정렬을 할지, 내림차순으로 정렬을 할지 선택하여 알맞게 사용을 하면 위의 결과처럼 오름차순, 내림차순으로 Value값이 잘 정렬돼서 출력된 것을 확인하실 수 있습니다!


 

참고로, Dictionary 자료구조가 아니더라도 List에서도 똑같이 사용이 가능 하기 때문에 위에서 사용 방법을 제대로 익히시면 두고두고 유용하게 사용 가능할 것 같아요ㅎㅎ

 

이로써, Dictionary 정렬 하는 방법에 대해서 알아보았습니다.

 

감사합니다ㅎㅎ


728x90

이 글을 공유하기

댓글

Designed by JB FACTORY