2009-04-07 10 views

답변

84

ArrayList를 사용하는 주요 시간이 .NET에 비해 1.1

다른이며, List<T> 모든 방법 (해당 지역 T) ... 사람들을 위해

(희귀) 유형을 알지 못하는 경우 (제네릭을 사용할 수없는 경우) List<object>ArrayList (IMO)보다 도움이됩니다.

+3

+1 매우 빠릅니다! :) –

+2

더 재미있는 일을 할 수 있을까? - ArrayList eugh :) – annakata

+2

"ArrayList [침]"는 어떻습니까? -p –

5

List는 제네릭 클래스이므로 항상 List를 사용하는 경향이 있습니다.

ArrayList는 .NET 1.x 클래스 (여전히 유효하지만 &은 유효 함)이지만 'typed'/ generic이 아니므로 'object'항목을 원하는 유형으로 다시 캐스팅해야합니다. 목록을 사용할 때는 그렇게하지 않아도됩니다.

12

TypeSafe이고 ArrayList (불필요한 권투/언 박싱 없음)보다 빠르기 때문에 항상 List<TypeOfChoice> (제네릭과 함께 .NET 2.0에 도입)을 사용해야합니다.

내가 ArrayList를 사용할 수있는 경우를 생각할 수있는 유일한 경우는 오래된 항목 (.NET 1.1)과 인터페이스해야하거나 다른 유형의 개체 배열이 필요하고 개체를 모두로드해야하지만 일반적으로 더 나은 List<Object>으로 후자를 수행 할 수 있습니다.

+0

+1 왜 설명을 위해 * 왜 * 목록을 '. – Lernkurve

4

가능한 경우 목록을 사용하십시오. 고성능 List가 존재하는 경우 ArrayList에 어떤 사용도 표시되지 않습니다.

0

다른 말로. List 타입을 사용해야합니다. 거의 항상 타입을 알고 있어야합니다 (C#은 강력한 타입의 언어입니다). 그리고 다형성/상속 클래스 나 다른 것들을 할 때 다른 방법을 사용해야합니다.

3

ArrayList는 이전 .NET 데이터 구조입니다. .NET 2.0 이상을 사용하는 경우 배열에서 동일한 유형의 항목을 보유해야하는 경우 항상 List를 사용하십시오. ArrayList를 통해 List를 사용하면 성능과 유용성이 향상됩니다.

0

Linq 쿼리를 사용하지 않으려면 List를 사용할 필요가 없습니다. 당신이 그 때 그것을 사용하고 싶은 경우에 당신은 명부를 선호해야한다.

0

Generics는 .Net 2.0에서 도입되었습니다. 이전 버전의 .Net을 사용하고 있다면 Array List를 사용할 수 있습니다. 그렇지 않으면 일반 목록 자체와 함께 갈 수 있습니다. Array List는 더 이상 사용되지 않으며 더 나은 유형 안전을 제공하지 않으며 또한 boxing 및 unboxing 문제를 만듭니다. 그러나 Generic List는 그렇지 않습니다.

관련 문제