JAVA

ArrayList vs LinkedList 차이

meetyou 2022. 11. 21. 14:27

ArrayList란?

중복을 허용하고 순서를 유지하며 인덱스로 원소들을 관리한다.

배열을 추가, 삭제 할 수 있다.

 

ArrayList 선언 방법

ArrayList<Integer> list = new ArrayList<>(5);

 

ArrayList 사용법

list.add(1); // 원소 삽입, 마지막에 원소를 추가함
list.remove(1); // 1번째 원소 삭제
list.get(0); // 0번째 원소를 얻어온다

 

LinkedList란?

양방향 연결 리스트로 원소에 따라 처음부터 순방향 또는 역순으로 순회할 수 있다.

각 데이터가 노드로 구성되어 있는 연결구조이다.

LinkedList<Integer> link = new LinkedList<>();

 

LinkedList 사용법

link.add(1); // 원소 삽입, 마지막에 원소를 추가함
link.remove(3); // 3번째 원소 삭제
link.get(2); // 2번째 값 출력

 

ArrayList vs LinkedList 성능 차이

컬렉션 읽는 시간 추가/삭제
ArrayList 빠르다 느리다
LinkedList 느리다 빠르다

 

조회가 빈번하다면 ArrayList를 사용하고

추가/삭제가 많다면 LinkedList를 사용하는 것이 좋다!!