ArraryList 와 List<T> 중에서 어떤 것을 사용할까?
C#에서 두가지 타입의 차이점을 무엇일까요?
우선 결론 부터 말하자면 List<T>를 사용해야한다.
ArrayList는 C#에서 제네릭이 없었을 때 사용하던 타입이다. 제네릭을 지원하지 않고 Object를 저장하기 때문에 Boxing과 UnBoxing 오버헤드가 발생하게 된다.
레거시 코드들을 보면 ArrayList를 사용한 것을 볼 수가 있는데, 무조건 List<T> 타입으로 변경하지 말고 신규로 작성하거나 기존의 코드에서 Boxing/Unboxing하면서 속도 문제가 발생할 때만 변경해주는 것이 안정성 면에서 좋다.
(참고: http://hongjinhyeon.tistory.com/90)
'프로그래밍 > C#' 카테고리의 다른 글
[C#] const VS readonly (0) | 2017.03.23 |
---|---|
[C#] Thread Safety 쓰레드 안전이란? (0) | 2017.03.14 |
[C#] if else VS switch 어떤것을 사용할까? (0) | 2017.03.06 |
[C#] 파일 처리 (폴더 생성 , 파일 생성 및 로드 ) (0) | 2017.02.21 |
[C#]익명메서드와 람다식 (0) | 2015.05.06 |