Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

Java에서 ArrayList와 LinkedList의 차이점

<시간/>

ArrayList와 LinkedList는 모두 Java에서 List 인터페이스를 구현한 것입니다. 두 클래스 모두 동기화되지 않습니다. 그러나 몇 가지 차이점도 있습니다.

다음은 ArrayList와 LinkedList 메소드의 중요한 차이점입니다.

Sr. 아니요.

배열 목록
링크드리스트
1
내부 구현
ArrayList는 내부적으로 동적 배열을 사용하여 요소를 저장합니다.
LinkedList는 이중 연결 목록을 사용하여 요소를 저장합니다.
2
조작
ArrayList는 배열 조작이 느리기 때문에 느립니다.
LinkedList는 많은 비트 이동이 필요하지 않기 때문에 노드 기반이 더 빠릅니다.
3
구현
ArrayList는 List만 구현합니다.
LinkedList는 List와 Queue를 구현합니다. 큐 역할도 할 수 있습니다.
4
액세스
ArrayList는 데이터 저장 및 액세스 속도가 더 빠릅니다.
LinkedList는 데이터 조작이 더 빠릅니다.

ArrayList와 LinkedList의 예

JavaTester.java

import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
public class JavaTester {
   public static void main(String args[]) {
      List<String> list = new ArrayList<>();
      list.add("A");
      list.add("B");
      list.add("C");
      list.add("D");
      List<String> list1 = new LinkedList<>();
      list1.add("A");
      list1.add("B");
      list1.add("C");
      list1.add("D");
      System.out.println(list);
      System.out.println(list1);
   }
}

출력t

[A, B, C, D]
[A, B, C, D]