자바의 배열리스트

자바의 배열리스트

Java의 ArrayList는 크기 조정 가능 (또는 동적) 배열 java.util 패키지 크기가 고정된 일반 배열과 달리 요소가 추가되거나 제거됨에 따라 자동으로 늘어나거나 줄어들 수 있습니다.

  • 색인화된 액세스: 배열과 마찬가지로 인덱스를 사용하여 요소에 액세스할 수 있습니다.
  • 중복 허용: 중복 요소가 허용됩니다.
  • 게재 신청서 유지: 요소는 삽입된 순서대로 저장됩니다.
  • 동기화되지 않음: 기본적으로 ArrayList는 스레드로부터 안전하지 않습니다(동시 액세스를 위해서는 수동 동기화가 필요함).
Java
   import     java.util.ArrayList  ;   class   Main     {      public     static     void     main     (  String  []     args  )     {          // Creating an ArrayList      ArrayList   <  Integer  >     a     =     new     ArrayList   <  Integer  >  ();          // Adding Element in ArrayList      a  .  add  (  1  );      a  .  add  (  2  );      a  .  add  (  3  );          // Printing ArrayList      System  .  out  .  println  (  a  );      }   }   

산출
[1 2 3]  

ArrayList의 계층 구조

구현합니다 목록 인터페이스 이는 하위 인터페이스입니다. 수집 인터페이스 .

ArrayList_Java-768

Java의 ArrayList 생성자

Java는 다양한 요구 사항에 따라 ArrayList를 생성하기 위한 여러 생성자를 제공합니다.

1. 배열목록()

기본 초기 용량을 사용하여 빈 ArrayList를 만듭니다.

배열목록 arr = 새로운 ArrayList <>();

2. 배열목록 arr = 새로운 ArrayList <>()

지정된 컬렉션의 요소로 초기화된 ArrayList를 만듭니다.

배열목록 arr = 새로운 ArrayList <>(수집);

3. ArrayList(intinitialCapacity)

이 생성자는 지정된 초기 용량으로 배열 목록을 작성하는 데 사용됩니다.

배열목록 arr = 새로운 ArrayList <>(20);

ArrayList의 작업

이제 생성자를 사용하여 ArrayList의 요소 삽입 및 업데이트와 같은 추가 작업을 위한 ArrayList를 얻었습니다.

Java
   import     java.util.*  ;   class   GFG  {          public     static     void     main  (  String     args  []  ){          // Creating an Array of string type      ArrayList   <  String  >     al     =     new     ArrayList   <>  ();      // 1. Adding elements to ArrayList at the end      al  .  add  (  'Geeks'  );      al  .  add  (  'Geeks'  );      System  .  out  .  println  (  'Original List : '  +  al  );          // Adding Elements at the specific index      al  .  add  (  1       'For'  );      System  .  out  .  println  (  'After Adding element at index 1 : '  +     al  );          // 2. Removing Element using index      al  .  remove  (  0  );          System  .  out  .  println  (  'Element removed from index 0 : '  +     al  );          // Removing Element using the value      al  .  remove  (  'Geeks'  );          System  .  out  .  println  (  'Element Geeks removed : '  +     al  );          // 3. Updating value at index 0      al  .  set  (  0       'GFG'  );          System  .  out  .  println  (  'List after updation of value : '  +  al  );      }   }   

산출
Original List : [Geeks Geeks] After Adding element at index 1 : [Geeks For Geeks] Element removed from index 0 : [For Geeks] Element Geeks removed : [For] List after updation of value : [GFG]  

Java ArrayList의 복잡성

작업

시간 복잡도

공간 복잡도

ArrayList에 요소 삽입

오(1)

에)

ArrayList에서 요소 제거

에)

오(1)

ArrayList의 요소 순회

에)

에)

ArrayList의 요소 교체

오(1)

오(1)

Java ArrayList 메소드

방법 설명
add(int index 객체 요소) 이 방법은 목록의 특정 위치 인덱스에 특정 요소를 삽입하는 데 사용됩니다.
add(객체 o) 이 메서드는 목록 끝에 특정 요소를 추가하는 데 사용됩니다.
addAll(컬렉션 C) 이 메서드는 지정된 컬렉션의 반복자가 값을 반환하는 순서대로 특정 컬렉션의 모든 요소를 ​​언급된 목록 끝에 추가하는 데 사용됩니다.
addAll(int 인덱스 컬렉션 C) 특정 컬렉션의 지정된 위치에서 시작하는 모든 요소를 ​​언급된 목록에 삽입하는 데 사용됩니다.
분명한() 이 메소드는 목록에서 모든 요소를 ​​제거하는 데 사용됩니다.
클론() 이 메소드는 Java에서 ArrayList의 얕은 복사본을 반환하는 데 사용됩니다.
포함(객체 o) 이 목록에 지정된 요소가 포함되어 있으면 true를 반환합니다.
verifyCapacity(int minCapacity) 최소 용량 인수로 지정된 요소 수 이상을 보유할 수 있도록 필요한 경우 이 ArrayList 인스턴스의 용량을 늘립니다.
forEach(소비자 행동) 모든 요소가 처리되거나 작업에서 예외가 발생할 때까지 Iterable의 각 요소에 대해 지정된 작업을 수행합니다.
get(정수 인덱스) 이 목록의 지정된 위치에 있는 요소를 반환합니다.
indexOf(객체 O) 특정 요소가 처음 나타나는 인덱스가 반환되거나 해당 요소가 목록에 없는 경우 -1이 반환됩니다.
비어있음() 이 목록에 요소가 없으면 true를 반환합니다.
lastIndexOf(객체 O) 특정 요소가 마지막으로 나타나는 인덱스가 반환되거나 해당 요소가 목록에 없으면 -1이 반환됩니다.
목록반복자() 이 목록의 요소에 대한 목록 반복자를 (적절한 순서로) 반환합니다.
listIterator(int 인덱스) 목록의 지정된 위치에서 시작하여 이 목록의 요소에 대한 목록 반복자를(적절한 순서로) 반환합니다.
제거(int 인덱스) 이 목록의 지정된 위치에 있는 요소를 제거합니다.
제거(객체 o) 지정된 요소가 있는 경우 이 목록에서 첫 번째로 나타나는 요소를 제거합니다.
RemoveAll(컬렉션 c) 지정된 컬렉션에 포함된 모든 요소를 ​​이 목록에서 제거합니다.
RemoveIf(조건자 필터) 주어진 조건을 만족하는 이 컬렉션의 모든 요소를 ​​제거합니다.
RemoveRange(int fromIndex int toIndex) 인덱스가 포함 인덱스와 제외 인덱스 사이에 있는 모든 요소를 ​​이 목록에서 제거합니다.
keepAll(컬렉션 기음) 지정된 컬렉션에 포함된 이 목록의 요소만 유지합니다.
set(int 인덱스 E 요소) 이 목록의 지정된 위치에 있는 요소를 지정된 요소로 바꿉니다.
크기() 이 목록의 요소 수를 반환합니다.
분할기() 이 목록의 요소에 대해 지연 바인딩 및 빠른 실패 Spliterator를 만듭니다.
subList(int fromIndex int toIndex) 지정된 fromIndex 포함과 toIndex 제외 사이에 있는 이 목록의 부분에 대한 뷰를 반환합니다.
toArray() 이 메소드는 목록의 모든 요소를 ​​올바른 순서로 포함하는 배열을 반환하는 데 사용됩니다.
toArray(Object[] O) 또한 이전 메서드와 동일한 올바른 순서로 이 목록의 모든 요소를 ​​포함하는 배열을 반환하는 데 사용됩니다.
트림투사이즈() 이 메서드는 ArrayList 인스턴스의 용량을 목록의 현재 크기로 자르는 데 사용됩니다.