Written by
nodejs-style
on
on
ArrayList | LinkedList | SynchronizedList 개념 정리
ArrayList | LinkedList | SynchronizedList 개념 정리
Collection Framework
출처 : 나무위키
List
Collection Framework를 확장하는 인터페이스
각 요소가 객체이고 index에 의해 엑세스 되는 요소들의 모임
구현체 : ArrayList, LinkedList, CopyOnWriteArrayList, Vector, Stack..
ArrayList
AbstractList 클래스를 확장하고 List 인터페이스를 구현하는 클래스
필요할 때마다 크기가 증가하거나 감소하는 동적 객체 배열을 만든는 클래스
배열과 같이 연속되는 기억장소에 저장되는 리스트
정적 배열의 문제를 극복한다
LinkedList
데이터를 임의의 공간에 저장시키되 데이터를 순서에 따라 노드의 포인터를 이용해 연결시키는 구조
삽입, 삭제 과정이 용이
포인터가 필요하기 때문에 기억 공간 이동 효율이 좋지 않다
연결을 위한 포인터를 찾는 시간이 필요하기 때문에 접근 속도가 느리다
SynchronizedList
Collections.synchronizedList() 메소드를 이용해 동기화된 List를 사용할 수 있다
하나의 스레드가 요소를 안전하게 작업하도록 도와주지만, 작업할 때 락이 발생하기 때문에 속도가 느려진다
from http://devsh247.tistory.com/5 by ccl(A) rewrite - 2021-12-12 22:26:32