Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

Java에서 ArrayList와 Vector의 차이점 - 2020 - 다른 사람


이 게시물에서는 Java에서 ArrayList와 Vector의 차이점을 이해할 것입니다.

배열 목록

  • 동기화되지 않았습니다.

  • 요소 수가 ArrayList의 용량을 초과하면 현재 배열 크기를 50% 증가시킵니다.

  • 스레드로부터 안전하지 않습니다.

  • JDK 1.2에서 도입되었습니다.

  • iterator는 순회할 때만 사용할 수 있습니다.

  • 비동기식이라 속도가 빠릅니다.

  • Iterator 인터페이스를 사용하여 요소를 순회합니다.

예시

ArrayList<T> al = new ArrayList<T>();

벡터

  • 동기화됩니다.

  • 스레드로부터 안전합니다.

  • 레거시 클래스입니다.

  • 동기화되어 있기 때문에 느립니다.

  • 요소 수가 벡터의 용량을 초과하면 현재 배열 크기가 100% 증가합니다.

  • 열거자와 반복자를 사용하여 순회할 수 있습니다.

  • ArrayList보다 선호됩니다.

  • 멀티스레딩 환경을 제공합니다.

  • 현재 스레드가 특정 개체에 대한 잠금을 해제할 때까지 다른 스레드를 실행 가능 또는 실행 불가 상태로 유지합니다.

  • 'Iterator' 인터페이스나 Enumeration 인터페이스를 사용하여 요소를 순회할 수 있습니다.

예시

Vector<T> v = new Vector<T>();