본문 바로가기

JAVA

[JAVA] List

반응형

List는 중복값을 허용하며 순서(인덱스)를 가지는 collection을 구현할 때 사용되며 ArrayList, Vector, LinkedList 등이 있다.

 

Vector

ArrayList와 구형원리가 같은 클래스이나 그 보다 속도가 느리다.

특정 Thread가 접근 시 다른 Thread가 접근 할 수 없다. 반면 ArrayList는 가능하다.

 

ArrayList

기존의 vector를 개선한 것으로 동적 배열과 같다. 빠른 반복과 무작위 접근이 가능하지만 실행 속도는 배열보다 느리다.

하지만 중간에서 빈번하게 데이터의 삽입/삭제가 발생할 경우 처리가 복잡하다.

 

LinkedList

데이터를 읽어오는데 걸리는 시간이 가장 빠르다.

단, 순차적인 데이터의 입력구조로 인해 중간에 삽입하려면 시간이 오래 걸린다.

 

따라서 인덱스로 원소를 접근하는 연산은 ArrayList의 성능이 좋고,

중간에 원소의 삽입/삭제가 빈번한 연산은 LinkedList의 성능이 더 좋다.

반응형

'JAVA' 카테고리의 다른 글

[JAVA] Map  (0) 2019.11.09
[JAVA] Set  (0) 2019.11.09
[JAVA] Collections Framework  (0) 2019.11.09
[JAVA] API란?  (0) 2019.11.09
[JAVA] String 함수  (0) 2019.11.09