C# | 클래스 나열
클래스 나열 인덱스로 접근할 수 있는 객체의 목록을 나타냅니다. 그것은 아래에 온다 시스템.컬렉션.일반 네임스페이스. 목록 클래스는 정수, 문자열 등과 같은 다양한 유형의 컬렉션을 만드는 데 사용할 수 있습니다. 목록 클래스는 목록을 검색, 정렬 및 조작하는 방법도 제공합니다.
형질:
- 배열과는 다릅니다. ㅏ 목록 크기를 동적으로 조정할 수 있습니다. 하지만 배열은 그럴 수 없습니다.
- 목록 클래스는 참조 유형에 대한 유효한 값으로 null을 허용할 수 있으며 중복 요소도 허용합니다.
- Count가 용량과 같아지면 내부 배열을 재할당하여 목록의 용량이 자동으로 증가합니다. 새 요소를 추가하기 전에 기존 요소가 새 배열에 복사됩니다.
- List 클래스는 IList 일반 인터페이스를 구현하여 ArrayList 클래스와 동일한 일반 클래스입니다.
- 이 클래스는 동등성과 순서 비교자를 모두 사용할 수 있습니다.
- 목록 클래스는 기본적으로 정렬되지 않으며 요소는 0부터 시작하는 인덱스로 액세스됩니다.
- 매우 큰 목록 개체의 경우 최대 용량은 20억 개 요소 64비트 시스템에서는 런타임 환경에서 구성 요소의 활성화 속성을 true로 설정합니다.
생성자
| 건설자 | 설명 |
|---|---|
| 목록() | 비어 있고 기본 초기 용량을 갖는 List 클래스의 새 인스턴스를 초기화합니다. |
| 목록(IEnumerable) | 지정된 컬렉션에서 복사된 요소를 포함하고 복사된 요소 수를 수용할 수 있는 충분한 용량을 가진 List 클래스의 새 인스턴스를 초기화합니다. |
| 목록(Int32) | 비어 있고 지정된 초기 용량을 갖는 List 클래스의 새 인스턴스를 초기화합니다. |
예:
// C# program to create a List> using> System;> using> System.Collections.Generic;> > class> Geeks {> > > // Main Method> > public> static> void> Main(String[] args)> > {> > > // Creating a List of integers> > List <> int> >첫 번째 목록 => new> List <> int> >();> > > // displaying the number> > // of elements of List> > Console.WriteLine(firstlist.Count);> > }> }> |
산출:
0
속성
| 재산 | 설명 |
|---|---|
| 용량 | 크기를 조정하지 않고 내부 데이터 구조가 보유할 수 있는 총 요소 수를 가져오거나 설정합니다. |
| 세다 | 목록에 포함된 요소 수를 가져옵니다. |
| 아이템[Int32] | 지정된 인덱스에 있는 요소를 가져오거나 설정합니다. |
예:
// C# program to illustrate the> // Capacity Property of List> using> System;> using> System.Collections.Generic;> > class> Geeks {> > > // Main Method> > public> static> void> Main(String[] args)> > {> > > // Creating a List of integers> > // Here we are not setting> > // Capacity explicitly> > List <> int> >첫 번째 목록 => new> List <> int> >();> > > // adding elements in firstlist> > firstlist.Add(1);> > firstlist.Add(2);> > firstlist.Add(3);> > firstlist.Add(4);> > > // Printing the Capacity of firstlist> > Console.WriteLine(> 'Capacity Is: '> + firstlist.Capacity);> > > // Printing the Count of firstlist> > Console.WriteLine(> 'Count Is: '> + firstlist.Count);> > > // Adding some more> > // elements in firstlist> > firstlist.Add(5);> > firstlist.Add(6);> > > // Printing the Capacity of firstlist> > // It will give output 8 as internally> > // List is resized> > Console.WriteLine(> 'Capacity Is: '> + firstlist.Capacity);> > > // Printing the Count of firstlist> > Console.WriteLine(> 'Count Is: '> + firstlist.Count);> > }> }> |
산출:
Capacity Is: 4 Count Is: 4 Capacity Is: 8 Count Is: 6
행동 양식
| 방법 | 설명 |
|---|---|
| 추가(T) | 목록의 끝에 개체를 추가합니다. |
| AddRange(IEnumerable) | 지정된 컬렉션의 요소를 목록 끝에 추가합니다. |
| AsReadOnly() | 현재 컬렉션에 대한 읽기 전용 ReadOnlyCollection 래퍼를 반환합니다. |
| 이진검색() | 이진 검색 알고리즘을 사용하여 정렬된 목록 또는 그 일부에서 특정 요소를 찾습니다. |
| 분명한() | 목록에서 모든 요소를 제거합니다. |
| 함유(T) | 요소가 목록에 있는지 여부를 결정합니다. |
| ConvertAll(변환기) | 현재 List의 요소를 다른 유형으로 변환하고, 변환된 요소가 포함된 목록을 반환합니다. |
| 에게 복사() | 목록 또는 그 일부를 배열에 복사합니다. |
| 같음(객체) | 지정된 개체가 현재 개체와 같은지 여부를 확인합니다. |
| 존재함(술어) | 목록에 지정된 조건자에 의해 정의된 조건과 일치하는 요소가 포함되어 있는지 확인합니다. |
| 찾기(술어) | 지정된 조건자에 정의된 조건과 일치하는 요소를 검색하고 전체 목록 내에서 첫 번째 항목을 반환합니다. |
| FindAll(술어) | 지정된 조건자에 의해 정의된 조건과 일치하는 모든 요소를 검색합니다. |
| 인덱스 찾기() | 지정된 조건자에 정의된 조건과 일치하는 요소를 검색하고 목록 또는 그 일부 내에서 처음 나타나는 요소의 0부터 시작하는 인덱스를 반환합니다. 이 메서드는 조건과 일치하는 항목을 찾을 수 없는 경우 -1을 반환합니다. |
| FindLast(술어) | 지정된 조건자에 정의된 조건과 일치하는 요소를 검색하고 전체 목록 내에서 마지막으로 나타나는 요소를 반환합니다. |
| 마지막 인덱스 찾기() | 지정된 조건자에 정의된 조건과 일치하는 요소를 검색하고 목록 또는 그 일부 내에서 마지막으로 나타나는 요소의 0부터 시작하는 인덱스를 반환합니다. |
| ForEach(작업) | 목록의 각 요소에 대해 지정된 작업을 수행합니다. |
| GetEnumerator() | 목록을 반복하는 열거자를 반환합니다. |
| GetHashCode() | 기본 해시 함수 역할을 합니다. |
| GetRange(Int32, Int32) | 소스 목록에 있는 요소 범위의 단순 복사본을 만듭니다. |
| GetType() | 현재 인스턴스의 유형을 가져옵니다. |
| 인덱스오브() | 목록 또는 그 일부에서 값이 처음 나타나는 0부터 시작하는 인덱스를 반환합니다. |
| 삽입(Int32, T) | 목록의 지정된 인덱스에 요소를 삽입합니다. |
| InsertRange(Int32, IEnumerable) | 컬렉션의 요소를 List의 지정된 인덱스에 삽입합니다. |
| 마지막 인덱스Of() | 목록 또는 그 일부에서 마지막으로 나타나는 값의 0부터 시작하는 인덱스를 반환합니다. |
| MemberwiseClone() | 현재 개체의 단순 복사본을 만듭니다. |
| 제거(T) | 목록에서 특정 개체가 처음 나타나는 것을 제거합니다. |
| RemoveAll(술어) | 지정된 조건자에 정의된 조건과 일치하는 모든 요소를 제거합니다. |
| 제거At(Int32) | 목록의 지정된 인덱스에 있는 요소를 제거합니다. |
| 제거범위(Int32, Int32) | 목록에서 일정 범위의 요소를 제거합니다. |
| 뒤집다() | 목록 또는 그 일부의 요소 순서를 반대로 바꿉니다. |
| 종류() | 목록 요소를 비교하기 위해 지정된 또는 기본 IComparer 구현이나 제공된 비교 대리자를 사용하여 목록에 있는 요소 또는 요소의 일부를 정렬합니다. |
| 배열로() | 목록의 요소를 새 배열에 복사합니다. |
| ToString() | 현재 객체를 나타내는 문자열을 반환합니다. |
| 초과 자르기() | 해당 수가 임계값보다 작은 경우 목록의 실제 요소 수로 용량을 설정합니다. |
| TrueForAll(술어) | 목록의 모든 요소가 지정된 조건자에 정의된 조건과 일치하는지 여부를 확인합니다. |
예시 1:
// C# Program to check whether the> // element is present in the List> // or not> using> System;> using> System.Collections.Generic;> > class> Geeks {> > > // Main Method> > public> static> void> Main(String[] args)> > {> > > // Creating an List of Integers> > List <> int> >첫 번째 목록 => new> List <> int> >();> > > // Adding elements to List> > firstlist.Add(1);> > firstlist.Add(2);> > firstlist.Add(3);> > firstlist.Add(4);> > firstlist.Add(5);> > firstlist.Add(6);> > firstlist.Add(7);> > > // Checking whether 4 is present> > // in List or not> > Console.Write(firstlist.Contains(4));> > }> }> |
산출:
True
예시 2:
// C# Program to remove the element at> // the specified index of the List> using> System;> using> System.Collections.Generic;> > class> Geeks {> > > // Main Method> > public> static> void> Main(String[] args)> > {> > > // Creating an List of Integers> > List <> int> >첫 번째 목록 => new> List <> int> >();> > > // Adding elements to List> > firstlist.Add(17);> > firstlist.Add(19);> > firstlist.Add(21);> > firstlist.Add(9);> > firstlist.Add(75);> > firstlist.Add(19);> > firstlist.Add(73);> > > Console.WriteLine(> 'Elements Present in List:
'> );> > > int> p = 0;> > > // Displaying the elements of List> > foreach> (> int> k> in> firstlist)> > {> > Console.Write(> 'At Position {0}: '> , p);> > Console.WriteLine(k);> > p++;> > }> > > Console.WriteLine(> ' '> );> > > // removing the element at index 3> > Console.WriteLine(> 'Removing the element at index 3
'> );> > > // 9 will remove from the List> > // and 75 will come at index 3> > firstlist.RemoveAt(3);> > > int> p1 = 0;> > > // Displaying the elements of List> > foreach> (> int> n> in> firstlist)> > {> > Console.Write(> 'At Position {0}: '> , p1);> > Console.WriteLine(n);> > p1++;> > }> > }> }> |
산출:
Elements Present in List: At Position 0: 17 At Position 1: 19 At Position 2: 21 At Position 3: 9 At Position 4: 75 At Position 5: 19 At Position 6: 73 Removing the element at index 3 At Position 0: 17 At Position 1: 19 At Position 2: 21 At Position 3: 75 At Position 4: 19 At Position 5: 73
참조: