2024-11-07


ArrayList로 추가하는데 걸린 시간 >>> 2458000ns
LinkedList로 추가하는데 걸린 시간 >>> 1384500ns
package collection;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
/*
* LinkedList
* - List 인터페이스의 자식 클래스 중 한 종류.
* - 특징
* 1) 인접 참조를 링크해서 체인처럼 관리함.
* 2) 특정 인덱스에서 객체를 제거하거나 객체를
* 추가하게 되면 앞 뒤의 링크만 연결하면
* 되는 구조임.
* 3) 빈번하게 삽입과 삭제가 일어나는 곳에서는
* ArrayList 보다 더 큰 성능을 발휘함.
* (단, 중간에 삽입과 삭제가 일어나는 경우)
*/
public class List_04 {
public static void main(String[] args) {
List<Integer> list1 = new ArrayList<Integer>();
List<Integer> list2 = new LinkedList<Integer>();
long start, end;
// 1. ArrayList 로 중간에 데이터를 추가하는데 걸리는 시간을 체크.
start = System.nanoTime();
for(int i = 1; i < 10000; i++) {
list1.add(0, i);
}
end = System.nanoTime();
System.out.println("ArrayList로 추가하는데 걸린 시간 >>> " + (end - start) + "ns");
// 2. LinkedList 로 중간에 데이터를 추가하는데 걸리는 시간을 체크.
start = System.nanoTime();
for(int i = 1; i < 10000; i++) {
list2.add(0, i);
}
end = System.nanoTime();
System.out.println("LinkedList로 추가하는데 걸린 시간 >>> " + (end - start) + "ns");
}
}'Java > 기초 내용 정리' 카테고리의 다른 글
| Java(GUI)_Event_30 (0) | 2024.11.07 |
|---|---|
| Java(GUI)_Event_29 (0) | 2024.11.07 |
| Java(Collection)_03 (0) | 2024.11.07 |
| Java(Collection)_02 (0) | 2024.11.07 |
| Java(Collection)_01 (0) | 2024.11.07 |