[c#] 메서드의 제네릭 사용
C#은 제네릭을 활용하여 유연하고 안전한 코드를 작성할 수 있는 강력한 기능을 제공합니다. 제네릭을 사용하면 코드의 재사용성을 높일 수 있고, 타입 안정성을 유지하면서 일반화된 알고리즘을 작성할 수 있습니다.
제네릭 메서드는 다양한 데이터 형식에 대해 동일한 알고리즘을 적용할 수 있어 매우 유용합니다.
public class GenericMethodExample
{
public T FindMax<T>(T[] array) where T : IComparable<T>
{
if (array == null || array.Length == 0)
{
throw new ArgumentException("The array is empty or null");
}
T max = array[0];
foreach (T item in array)
{
if (item.CompareTo(max) > 0)
{
max = item;
}
}
return max;
}
}
위 코드는 제네릭 메서드 FindMax
를 보여줍니다. 이 메서드는 제네릭 타입 T
를 사용하고, IComparable
인터페이스를 구현한 형식에 제한을 둡니다. 제네릭 메서드는 배열을 입력으로 받아 배열 요소들 중에서 가장 큰 값을 찾아 반환하는 기능을 수행합니다.
제네릭 메서드를 사용함으로써, 여러 가지 형식의 배열에 대해 동일한 로직을 적용할 수 있으며, 컴파일 타임에 타입 안정성을 보장받을 수 있습니다.
이와 같이 C#의 제네릭 메서드를 적절히 활용하면 코드의 재사용성과 유연성을 높일 수 있습니다.