C#의 SortedList 클래스에서 Keys 속성을 사용하면 컬렉션에 저장된 모든 키를 쉽게 가져올 수 있습니다. Keys 속성은 SortedList에 포함된 키들을 담고 있는 ICollection 객체를 반환하며, 반복문과 함께 활용하면 각 키를 순차적으로 처리할 수 있습니다.
SortedList에 요소 추가하기
먼저 SortedList 객체를 생성하고 Add 메서드를 통해 여러 개의 키-값 쌍을 추가합니다. SortedList는 키를 기준으로 자동 정렬되므로, 추가한 순서와 관계없이 키가 정렬된 상태로 저장됩니다.
SortedList sl = new SortedList();
sl.Add("ST0", "One");
sl.Add("ST1", "Two");
sl.Add("ST2", "Three");
sl.Add("ST3", "Four");
sl.Add("ST4", "Five");
sl.Add("ST5", "Six");
sl.Add("ST6", "Seven");Keys 속성으로 키 가져오기
SortedList가 준비되면 Keys 속성을 호출하여 모든 키를 ICollection 형태로 받아올 수 있습니다.
ICollection key = sl.Keys;
반환받은 컬렉션은 foreach 문으로 순회하여 각 키를 하나씩 출력할 수 있습니다.
전체 예제 코드
다음은 SortedList 클래스의 Keys 속성을 실제로 구현한 전체 코드입니다.
using System;
using System.Collections;
namespace Demo {
class Program {
static void Main(string[] args) {
SortedList sl = new SortedList();
sl.Add("ST0", "One");
sl.Add("ST1", "Two");
sl.Add("ST2", "Three");
sl.Add("ST3", "Four");
sl.Add("ST4", "Five");
sl.Add("ST5", "Six");
sl.Add("ST6", "Seven");
ICollection key = sl.Keys;
foreach (string k in key) {
Console.WriteLine(k);
}
}
}
}실행 결과
위 코드를 실행하면 SortedList에 저장된 모든 키가 정렬된 순서대로 출력됩니다.
ST0 ST1 ST2 ST3 ST4 ST5 ST6
참고 사항
Keys 속성은 키만 필요할 때 유용하며, 값만 가져오려면 Values 속성을 사용하면 됩니다. 또한 반환된 ICollection은 SortedList와 동기화되어 있어, 원본 컬렉션이 변경되면 해당 변경 사항이 그대로 반영됩니다. 다만 읽기 전용이므로 직접 수정할 수는 없습니다.