Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C#에서 딕셔너리(Dictionary)를 반복하는 방법 완벽 가이드

C#에서 Dictionary(딕셔너리)는 키(Key)와 값(Value)의 쌍으로 데이터를 저장하는 대표적인 컬렉션입니다. 이 글에서는 딕셔너리에 요소를 추가하고, 키 목록을 가져온 뒤, foreach 문으로 전체 데이터를 반복하며 출력하는 방법을 단계별로 알아보겠습니다.

1단계: 딕셔너리에 요소 추가하기

먼저 IDictionary<int, int> 타입의 딕셔너리를 생성하고 Add() 메서드를 사용해 키와 값을 추가합니다.

IDictionary<int, int> d = new Dictionary<int, int>();
d.Add(1, 97);
d.Add(2, 89);
d.Add(3, 77);
d.Add(4, 88);

2단계: 키 목록 가져오기

딕셔너리의 모든 키는 Keys 속성으로 접근할 수 있습니다. 이를 List<int>로 변환하면 반복 처리가 더욱 편리해집니다.

List<int> myList = new List<int>(d.Keys);

3단계: foreach로 반복하기

키 목록을 순회하면서 각 키에 해당하는 값도 함께 출력합니다.

foreach (int k in myList) {
    Console.WriteLine("{0}, {1}", k, d[k]);
}

전체 예제 코드

지금까지의 과정을 하나의 프로그램으로 정리하면 다음과 같습니다.

using System;
using System.Collections.Generic;

public class Demo {
    public static void Main() {
        IDictionary<int, int> d = new Dictionary<int, int>();
        d.Add(1, 97);
        d.Add(2, 89);
        d.Add(3, 77);
        d.Add(4, 88);

        List<int> myList = new List<int>(d.Keys);

        foreach (int k in myList) {
            Console.WriteLine("{0}, {1}", k, d[k]);
        }
    }
}

실행 결과

1, 97
2, 89
3, 77
4, 88

참고: 더 간결한 반복 방법

C#에서는 키 목록을 별도로 만들지 않고 KeyValuePair를 사용해 딕셔너리를 직접 순회할 수도 있습니다.

foreach (KeyValuePair<int, int> pair in d) {
    Console.WriteLine("{0}, {1}", pair.Key, pair.Value);
}

이 방식은 코드가 더 간결하고 성능 면에서도 유리하므로, 실무에서는 KeyValuePair 기반의 반복문이 널리 사용됩니다.