경진의 블로그

ArrayList와 Vector의 차이 본문

자바개발과정/자바(Java)

ArrayList와 Vector의 차이

aith 2008. 7. 11. 21:41
배열과 비슷하지만 다른 종류의 데이터형을 가졌다.
또한 배열과는 달리 그 크기를 지정안해도 알아서 크기(저장 공간)을 늘려준다.

ArrayList 클래스를 살펴보면 다음과 같은 주석이 있다.
(This class is roughly equivalent to * Vector, except that it is unsynchronized.)

벡터의 동기화(sychronized) 기능을 제거한 것이 ArrayList이다.

동기화를 사용하면 데이터가 중간에 가로채기 당하는 것을 막을 수 있지만 그만큼 성능이 떨어진다.
(SELECT해서 조회하는 경우에는 ArrayList가 좋다.)

Vector
구버전 호환용 그다지 사용되지는 않는다.
동기화 처리가 내부적으로 일어난다.
다른 객체보다 무겁다.

ArrayList
배열의 복사에 의한 데이터 저장처리를 내부적으로 행한다.
각 데이터에 대한 인덱스를 가지고 있어 검색이 매우 빠르다.
단, 많은 데이터의 추가/삭제시에는 배열의 복사가 자주 발생되어 성능이 떨어진다.
0 Comments
댓글쓰기 폼