[c#] 제네릭이 포함된 .NET Framework 클래스들

.NET Framework는 많은 제네릭 클래스들을 포함하고 있어 제네릭을 활용하여 타입 안전성을 높일 수 있습니다. 이러한 제네릭 클래스들은 다양한 데이터 구조 및 알고리즘을 구현하는 데 유용합니다.

List 클래스

List<T> 클래스는 배열 기반의 동적 크기 컬렉션으로, 특정 타입의 요소들을 저장할 수 있습니다. 제네릭이 적용되어 있기 때문에 컴파일 시간에 타입 안전성을 보장하며, 사용 시 타입 캐스팅이 필요하지 않습니다. 아래는 List<T> 클래스의 간단한 예제입니다.

List<int> numbers = new List<int>();
numbers.Add(10);
numbers.Add(20);
numbers.Add(30);
foreach (int number in numbers)
{
    Console.WriteLine(number);
}

Dictionary<TKey, TValue> 클래스

Dictionary<TKey, TValue> 클래스는 키-값 쌍의 컬렉션을 나타내며, 각 키는 유일해야 합니다. 제네릭을 사용하여 각 키와 값의 타입을 명확하게 지정하므로 안전한 데이터 저장 및 검색이 가능합니다. 아래는 Dictionary<TKey, TValue> 클래스의 간단한 예제입니다.

Dictionary<string, int> ages = new Dictionary<string, int>();
ages.Add("John", 25);
ages.Add("Alice", 30);
ages.Add("Bob", 28);
Console.WriteLine("Alice's age is " + ages["Alice"]);

Tuple 클래스

Tuple 클래스는 다양한 타입의 요소들을 일회성으로 그룹화하는 데 사용됩니다. 제네릭을 사용하면 각 요소의 타입을 명시적으로 지정할 수 있으므로, 컴파일러가 요소의 타입을 검증할 수 있습니다. 아래는 Tuple 클래스의 간단한 예제입니다.

Tuple<string, int, bool> person = new Tuple<string, int, bool>("Alice", 25, true);
Console.WriteLine("Name: " + person.Item1 + ", Age: " + person.Item2 + ", IsStudent: " + person.Item3);

제네릭을 활용하는 .NET Framework 클래스들은 코드의 가독성과 유지보수성을 향상시키며, 안정적인 타입 안전성을 제공합니다.

참고 자료