문서를 영문으로 보려면 영문 확인란을 선택하세요. 마우스 포인터를 텍스트 위로 이동시켜 팝업 창에서 영문 텍스트를 표시할 수도 있습니다.
번역
영문
이 설명서는 보관되지만 유지 되지 않습니다.

ArrayList 클래스

필요에 따라 크기가 동적으로 증가하는 배열을 사용하여 IList 인터페이스를 구현합니다.

네임스페이스:  System.Collections
어셈블리:  mscorlib(mscorlib.dll)

[SerializableAttribute]
[ComVisibleAttribute(true)]
public class ArrayList : IList, ICollection, 
	IEnumerable, ICloneable

ArrayList 형식에서는 다음과 같은 멤버를 노출합니다.

  이름설명
Public 메서드XNA Framework에서 지원ArrayList()비어 있는 상태에서 기본 초기 용량을 가지는 ArrayList 클래스의 새 인스턴스를 초기화합니다.
Public 메서드XNA Framework에서 지원ArrayList(ICollection)지정한 컬렉션에서 복사된 요소가 포함되어 있고 복사된 요소의 수와 같은 초기 용량을 가지는 ArrayList 클래스의 새 인스턴스를 초기화합니다.
Public 메서드XNA Framework에서 지원ArrayList(Int32)비어 있는 상태에서 지정한 초기 용량을 가지는 ArrayList 클래스의 새 인스턴스를 초기화합니다.
위쪽

  이름설명
Public 속성XNA Framework에서 지원Capacity ArrayList 에 포함될 수 있는 요소의 수를 가져오거나 설정합니다.
Public 속성XNA Framework에서 지원Count ArrayList 에 실제로 포함된 요소의 수를 가져옵니다.
Public 속성XNA Framework에서 지원IsFixedSize ArrayList 의 크기가 고정되어 있는지 여부를 나타내는 값을 가져옵니다.
Public 속성XNA Framework에서 지원IsReadOnly ArrayList 가 읽기 전용인지 여부를 나타내는 값을 가져옵니다.
Public 속성XNA Framework에서 지원IsSynchronized ArrayList 에 대한 액세스가 동기화되어 스레드로부터 안전하게 보호되는지 여부를 나타내는 값을 가져옵니다.
Public 속성XNA Framework에서 지원Item지정한 인덱스에 있는 요소를 가져오거나 설정합니다.
Public 속성XNA Framework에서 지원SyncRoot ArrayList 에 대한 액세스를 동기화하는 데 사용할 수 있는 개체를 가져옵니다.
위쪽

  이름설명
Public 메서드정적 멤버Adapter특정 IList에 대해 ArrayList 래퍼를 만듭니다.
Public 메서드XNA Framework에서 지원Add개체를 ArrayList의 끝 부분에 추가합니다.
Public 메서드XNA Framework에서 지원AddRange ArrayList 의 끝에 ICollection의 요소를 복사합니다.
Public 메서드BinarySearch(Object)기본 비교자를 사용하여 정렬된 전체 ArrayList에서 요소를 검색하고 요소의 0부터 시작하는 인덱스를 반환합니다.
Public 메서드BinarySearch(Object, IComparer)지정된 비교자를 사용하여 정렬된 전체 ArrayList에서 요소를 검색하고 요소의 0부터 시작하는 인덱스를 반환합니다.
Public 메서드XNA Framework에서 지원BinarySearch(Int32, Int32, Object, IComparer)지정된 비교자를 사용하여 정렬된 ArrayList의 요소 범위에서 요소를 검색하고 요소의 0부터 시작하는 인덱스를 반환합니다.
Public 메서드XNA Framework에서 지원Clear ArrayList 에서 요소를 모두 제거합니다.
Public 메서드XNA Framework에서 지원Clone ArrayList 의 단순 복사본을 만듭니다.
Public 메서드XNA Framework에서 지원Contains요소가 ArrayList에 있는지 여부를 확인합니다.
Public 메서드XNA Framework에서 지원CopyTo(Array)대상 배열의 맨 처음부터 시작하여 전체 ArrayList를 호환되는 1차원 Array에 복사합니다.
Public 메서드XNA Framework에서 지원CopyTo(Array, Int32)대상 배열의 지정된 인덱스에서 시작하여 전체 ArrayList를 호환되는 1차원 Array에 복사합니다.
Public 메서드XNA Framework에서 지원CopyTo(Int32, Array, Int32, Int32)대상 배열의 지정한 인덱스에서 시작하여 ArrayList의 요소 범위를 호환되는 1차원 Array에 복사합니다.
Public 메서드XNA Framework에서 지원Equals(Object)지정한 Object가 현재 Object와 같은지 여부를 확인합니다. (Object에서 상속됨)
Protected 메서드XNA Framework에서 지원Finalize가비지 수집에서 회수하기 전에 개체에서 리소스를 해제하고 다른 정리 작업을 수행할 수 있게 합니다. (Object에서 상속됨)
Public 메서드정적 멤버FixedSize(ArrayList)고정 크기의 ArrayList 래퍼를 반환합니다.
Public 메서드정적 멤버FixedSize(IList)고정 크기의 IList 래퍼를 반환합니다.
Public 메서드XNA Framework에서 지원GetEnumerator()전체 ArrayList에 대한 열거자를 반환합니다.
Public 메서드GetEnumerator(Int32, Int32) ArrayList 의 요소 범위에 대한 열거자를 반환합니다.
Public 메서드XNA Framework에서 지원GetHashCode특정 형식에 대한 해시 함수 역할을 합니다. (Object에서 상속됨)
Public 메서드GetRange소스 ArrayList에서 요소의 하위 집합을 나타내는 ArrayList를 반환합니다.
Public 메서드XNA Framework에서 지원GetType현재 인스턴스의 Type을 가져옵니다. (Object에서 상속됨)
Public 메서드XNA Framework에서 지원IndexOf(Object)지정한 Object를 검색하고, 전체 ArrayList 내에서 처음 나오는 0부터 시작하는 인덱스를 반환합니다.
Public 메서드IndexOf(Object, Int32)지정된 Object를 검색하고, 지정된 인덱스부터 마지막 요소까지 포함되는 ArrayList의 요소 범위에서 맨 처음 나오는 0부터 시작하는 인덱스를 반환합니다.
Public 메서드XNA Framework에서 지원IndexOf(Object, Int32, Int32)지정된 Object를 검색하고, 지정된 인덱스부터 시작하여 지정된 수의 요소를 포함하는 ArrayList의 요소 범위에서 맨 처음 나오는 0부터 시작하는 인덱스를 반환합니다.
Public 메서드XNA Framework에서 지원Insert ArrayList 의 지정된 인덱스에 요소를 삽입합니다.
Public 메서드XNA Framework에서 지원InsertRange ArrayList 의 지정된 인덱스에 컬렉션의 요소를 삽입합니다.
Public 메서드LastIndexOf(Object)지정한 Object를 검색하고, 전체 ArrayList 내에서 마지막으로 나오는 0부터 시작하는 인덱스를 반환합니다.
Public 메서드LastIndexOf(Object, Int32)지정된 Object를 검색하고, 첫 번째 요소부터 지정된 인덱스까지 포함되는 ArrayList의 요소 범위에서 마지막으로 나오는 0부터 시작하는 인덱스를 반환합니다.
Public 메서드LastIndexOf(Object, Int32, Int32)지정된 Object를 검색하며, 지정된 수의 요소를 포함하고 지정된 인덱스에서 끝나는 ArrayList의 요소 범위에서 마지막으로 나오는 0부터 시작하는 인덱스를 반환합니다.
Protected 메서드XNA Framework에서 지원MemberwiseClone현재 Object의 단순 복사본을 만듭니다. (Object에서 상속됨)
Public 메서드정적 멤버ReadOnly(ArrayList)읽기 전용 ArrayList 래퍼를 반환합니다.
Public 메서드정적 멤버ReadOnly(IList)읽기 전용 IList 래퍼를 반환합니다.
Public 메서드XNA Framework에서 지원Remove ArrayList 에서 맨 처음 나타나는 특정 개체를 제거합니다.
Public 메서드XNA Framework에서 지원RemoveAt ArrayList 의 지정한 인덱스에서 요소를 제거합니다.
Public 메서드XNA Framework에서 지원RemoveRange ArrayList 에서 요소의 범위를 제거합니다.
Public 메서드정적 멤버Repeat요소가 지정된 값의 복사본인 ArrayList를 반환합니다.
Public 메서드XNA Framework에서 지원Reverse()전체 ArrayList에서 요소의 순서를 반대로 바꿉니다.
Public 메서드XNA Framework에서 지원Reverse(Int32, Int32)지정된 범위에서 요소의 순서를 반대로 바꿉니다.
Public 메서드SetRange ArrayList 의 요소 범위에 대해 컬렉션의 요소를 복사합니다.
Public 메서드XNA Framework에서 지원Sort()전체 ArrayList의 요소를 정렬합니다.
Public 메서드XNA Framework에서 지원Sort(IComparer)지정된 비교자를 사용하여 전체 ArrayList에 있는 요소를 정렬합니다.
Public 메서드XNA Framework에서 지원Sort(Int32, Int32, IComparer)지정된 비교자를 사용하여 ArrayList의 요소 범위에 있는 요소를 정렬합니다.
Public 메서드정적 멤버XNA Framework에서 지원Synchronized(ArrayList)동기화되어 스레드로부터 안전하게 보호되는 ArrayList 래퍼를 반환합니다.
Public 메서드정적 멤버Synchronized(IList)동기화되어 스레드로부터 안전하게 보호되는 IList 래퍼를 반환합니다.
Public 메서드XNA Framework에서 지원ToArray() ArrayList 의 요소를 새 Object 배열에 복사합니다.
Public 메서드XNA Framework에서 지원ToArray(Type) ArrayList 의 요소를 지정된 요소 형식의 새 배열에 복사합니다.
Public 메서드XNA Framework에서 지원ToString현재 개체를 나타내는 문자열을 반환합니다. (Object에서 상속됨)
Public 메서드XNA Framework에서 지원TrimToSize용량을 ArrayList의 실제 요소 수로 설정합니다.
위쪽

  이름설명
Public 확장 메서드AsParallel쿼리를 병렬화할 수 있도록 합니다. (ParallelEnumerable에서 정의됨)
Public 확장 메서드AsQueryable IEnumerable IQueryable로 변환합니다. (Queryable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원Cast<TResult> IEnumerable 의 요소를 지정된 형식으로 변환합니다. (Enumerable에서 정의됨)
Public 확장 메서드XNA Framework에서 지원OfType<TResult>지정된 형식에 따라 IEnumerable의 요소를 필터링합니다. (Enumerable에서 정의됨)
위쪽

ArrayList 는 정렬되어 있지 않을 수 있으므로 ArrayList 가 정렬되어 있어야 하는 BinarySearch와 같은 작업을 수행하기 전에는 ArrayList를 정렬해야 합니다.

ArrayList 의 용량은 ArrayList가 보유할 수 있는 요소의 수입니다. 요소가 ArrayList에 추가될 때 필요하면 재할당을 통해 용량이 자동으로 증가됩니다. TrimToSize 를 호출하거나 Capacity 속성을 명시적으로 설정하여 용량을 줄일 수도 있습니다.

이 컬렉션에 있는 요소는 정수 인덱스를 사용하여 액세스할 수 있습니다. 이 컬렉션의 인덱스는 0부터 시작합니다.

ArrayList null을 유효한 값으로 받아들이며 중복 요소를 허용합니다.

ArrayList 컬렉션의 요소로 다차원 배열을 사용하는 것은 지원되지 않습니다.

다음 코드 예제에서는 ArrayList를 만들고 초기화하는 방법과 해당 값을 출력하는 방법을 보여 줍니다.


using System;
using System.Collections;
public class SamplesArrayList  {

   public static void Main()  {

      // Creates and initializes a new ArrayList.
      ArrayList myAL = new ArrayList();
      myAL.Add("Hello");
      myAL.Add("World");
      myAL.Add("!");

      // Displays the properties and values of the ArrayList.
      Console.WriteLine( "myAL" );
      Console.WriteLine( "    Count:    {0}", myAL.Count );
      Console.WriteLine( "    Capacity: {0}", myAL.Capacity );
      Console.Write( "    Values:" );
      PrintValues( myAL );
   }

   public static void PrintValues( IEnumerable myList )  {
      foreach ( Object obj in myList )
         Console.Write( "   {0}", obj );
      Console.WriteLine();
   }

}


/* 
This code produces output similar to the following:

myAL
    Count:    3
    Capacity: 4
    Values:   Hello   World   !

*/


.NET Framework

4, 3.5, 3.0, 2.0, 1.1, 1.0에서 지원

.NET Framework Client Profile

4, 3.5 SP1에서 지원

Windows 7, Windows Vista SP1 이상, Windows XP SP3, Windows XP SP2 x64 버전, Windows Server 2008(Server Core는 지원되지 않음), Windows Server 2008 R2(Server Core는 SP1 이상에서 지원됨), Windows Server 2003 SP2

.NET Framework에서 모든 플랫폼의 전체 버전을 지원하지는 않습니다. 지원되는 버전의 목록을 보려면 .NET Framework 시스템 요구 사항을 참조하십시오.

이 형식의 public static(Visual Basic의 경우 Shared) 멤버는 스레드로부터 안전합니다. 모든 인스턴스 멤버는 스레드로부터 안전하지 않을 수 있습니다.

ArrayList 는 컬렉션이 수정되지 않으면 여러 개의 reader를 동시에 지원할 수 있습니다. ArrayList 을 스레드로부터 보호하려면 Synchronized 메서드가 반환한 래퍼를 통해 모든 작업을 완료해야 합니다.

컬렉션을 열거하는 프로시저는 기본적으로 스레드로부터 안전하지 않습니다. 컬렉션이 동기화되어 있을 때 다른 스레드에서 해당 컬렉션을 수정할 수 있으므로 이렇게 되면 열거자에서 예외가 throw됩니다. 열거하는 동안 스레드로부터 안전하게 보호하려면 전체 열거를 수행하는 동안 컬렉션을 잠그거나 다른 스레드에서 변경된 내용으로 인해 발생한 예외를 catch하면 됩니다.

표시: