기초 메모지

C# - 제네릭 컬렉션(Generic Collection) 본문

Languages/C#

C# - 제네릭 컬렉션(Generic Collection)

라큐브 2022. 6. 30. 00:11

제네릭 컬렉션은 특정 타입만 추가할 수 있는 컬렉션입니다.

공식 문서를 참고하면 제네릭 컬렉션은 "컬렉션 <T(타입)>" 형식을 갖추고 있습니다.

System.Collections.Generic 네임스페이스 | Microsoft Docs

 

System.Collections.Generic 네임스페이스

제네릭 컬렉션을 정의하는 클래스와 인터페이스가 포함되어 있습니다. 이를 통해 사용자는 제네릭이 아닌 강력한 형식의 컬렉션보다 형식 안전성과 성능이 높은 강력한 형식의 컬렉션을 만들

docs.microsoft.com

 

ArrayList(컬렉션) - 형식에 상관없이 모두 들어간다.

- 모든 타입이 들어가므로 형(타입)변환 에러 가능성이 높다.

- 다양한 형식이 들어갈 수 있으므로 제네릭 컬렉션보다 성능이 낮다. 

 

List<T>(제네릭 컬렉션) - 지정한 특정 형식만 들어갈 수 있다.

- 특정 타입만 들어가므로 형(타입)변환 에러가 적다. 

- 특정 타입만 들어가므로 컬렉션 보다 성능이 높다.

 

ArrayList alList = new ArrayList();

// Int
alList.Add(1234);
// String
alList.Add("ABCD");
// Float
alList.Add(3.14);

foreach(var Item in alList)
{
   Console.WriteLine(Item);
}
// 1234
// ABCD
// 3.14

// 어떤 타입이든 다 집어넣을 수 있다.

// string 타입 리스트
List<string> stringList = new List<string>();

// 컴파일 에러. string 타입만 추가할 수 있다.
stringList.Add(1234); 
stringList.Add("ABCD");

 

반응형
Comments