ArrayList

지난 포스팅에서 JCF를 다루었습니다. 이번 포스팅에서는 JCF의 ArrayList에 대해 살펴보겠습니다. ArrayList와 LinkedList 차이우선, ArrayList와 LinkedList의 개념적인 차이를 통해 ArrayList를 살펴보겠습니다. ArrayListArrayList는 데이터들이 쭉 늘어선 배열의 형식입니다.  ArrayList는 데이터의 인덱스를 가지고 있어서, 탐색(시간 복잡도: O(1))이 매우 용이하지만 데이터의 삽입과 삭제에서는 인덱스들의 위치를 조절해주어야 하기 때문에 O(n)의 시간 복잡도를 가집니다.  LinkedList 반면, LinkedList는 자료의 주소값으로 서로 연결되어있는 구조입니다. 내부적으로 양방향의 연결리스트로 구현되어있습니다. 탐색 시에 순차적으로 ..
이전 포스팅에서  Vector, Hashtable과 같이 포함되지 않는 클래스들이 있는데, 이것은 컬렉션 프레임 워크 이전에 만들어진 클래스들로 호환을 위해 남겨진 것을 언급했습니다.  이번 포스팅에서는 레거시 클래스인 Vector를 간단히 살펴보고 ArrayList와 비교한 것을 정리했습니다. 레거시 클래스: Vector Vector는 JDK 1.0부터 있었던 자료구조로 호환성을 위해 남겨진 클래스입니다.  Vector  vs ArrayList Vector 자체는 ArrayList와 기능이 거의 동일하지만, 한 가지 다른 것은 ArrayList는 비동기 방식이고 Vector는 동기 방식이라는 것에 있습니다. 실제 벡터의 메서드 내부를 들여다보면, synchroized가 선언되어있는 것을 볼 수 있습니다..
동구름이
'ArrayList' 태그의 글 목록