.NET: 어레이 목록 대 목록
VB에서 ArrayList와 List의 차이점은 무엇입니까?그물
ArrayLists는 기본적으로 사용되지 않으며(캐스트와 함께 사용해야 함) 항목을 상자에 넣어야 하기 때문에 값 유형에 대한 속도가 느리고 공간 효율성이 떨어집니다.
일반 목록은 에서 소개되었습니다.넷 2.0과 그것이 최선의 방법입니다.종종 목록이 배열보다 낫고 단점이 거의 없습니다.
이러한 컬렉션은 의 일부이기 때문입니다.NetBase 클래스 라이브러리, 이 권장 사항은 C# 및 모든 항목에도 적용됩니다.제네릭을 지원하는 넷 언어 - VB에만 국한되지 않습니다.그물.
목록은 ArrayList의 일반적인 구현입니다.ArrayList는 모든 개체를 System으로 저장합니다.그런 다음 적절한 유형으로 캐스트해야 하는 개체입니다.ArrayLists는 이기종이므로 List는 하나의 개체 유형(일반 매개 변수로 제공된 유형)만 저장할 수 있습니다.
List<string> strList; // can store only strings
List<int> intList; // can store only ints
ArrayList someList; // can store anything
ArrayLists는 32비트 시스템의 32비트 참조 및 복싱과 달리 64비트 와이드 메모리 참조로 인해 64비트에서 원시 요소를 저장하는 데 사용할 경우 공간 효율성이 훨씬 더 떨어집니다.
자세한 내용은 다음을 참조하십시오. http://blogs.msdn.com/joshwil/archive/2004/04/13/112598.aspx
ArrayList를 사용하여 다음을 작성할 수 있습니다.
Dim customers as new ArrayList
Dim c as new Customer
Dim m as new Manager
customers.Add(c)
customers.Add(m)
'This will cause an exception '
For each c as Customer in customers
console.writeline(c.Name)
Next
고객 목록은 고객으로부터 상속되는 고객 유형 및 유형의 개체만 허용하므로 이러한 실수를 범할 수 없습니다.
관련 없는 유형의 개체를 동일한 컬렉션에 넣어야 하는 경우에도 List(Of Object)는 서로 다른 유형을 처리하고 있음을 명시하므로 더 나은 선택입니다.
목록은 제네릭을 사용하여 특정 유형의 개체만 넣을 수 있으므로 추가 유형 검사를 수행할 수 있으며 복싱 및 복싱 해제로 인한 처리 시간을 줄일 수 있습니다.배열 목록에서 이 값을 사용할 수 없습니다.대부분의 경우 배열 목록 대신 목록을 사용합니다.
언급URL : https://stackoverflow.com/questions/365482/net-arraylist-vs-list
'programing' 카테고리의 다른 글
Angular Karma Jasmine 오류:잘못된 상태:지시문 요약을 로드할 수 없습니다. (0) | 2023.05.15 |
---|---|
대소문자를 구분하지 않는 문자열을 LINQ-SQL로 비교 (0) | 2023.05.15 |
Linux의 PostgreSQL 데이터베이스 기본 위치 (0) | 2023.05.15 |
스택 팝을 중단하는 방법은? (0) | 2023.05.15 |
라우터 탐색에서 동일한 페이지에서 ngOnInit를 호출하지 않음 (0) | 2023.05.15 |