반응형
ArrayList, LinkedList 속도 비교
구분 | 순차적 추가 / 삭제 | 중간 추가 / 삭제 | 검색 |
ArrayList | 빠름 | 느림 | 빠름 |
LinkedList | 느림 | 빠름 | 빠름 |
List<String> test1 = new ArrayList<String>();
List<String> test2 = new LinkedList<String>();
long startTime;
long endTime;
startTime = System.nanoTime();
for (int i = 0; i < 100000; i++) {
test1.add(0, String.valueOf(i));
}
endTime =System.nanoTime();
System.out.println("지속 변경 ArrayList 걸린 시간 : " + (endTime - startTime));
startTime = System.nanoTime();
for (int i = 0; i < 100000; i++) {
test2.add(0, String.valueOf(i));
}
endTime = System.nanoTime();
System.out.println("지속 변경 LinkedList 걸린 시간 : " + (endTime - startTime));
startTime = System.nanoTime();
for (int i = 0; i < 100000; i++) {
test1.add(String.valueOf(i));
}
endTime =System.nanoTime();
System.out.println("순차적 추가 ArrayList 걸린 시간 : " + (endTime - startTime));
startTime = System.nanoTime();
for (int i = 0; i < 100000; i++) {
test2.add(String.valueOf(i));
}
endTime = System.nanoTime();
System.out.println("순차적 추가 LinkedList 걸린 시간 : " + (endTime - startTime));
반응형
'프로그래밍 > Java' 카테고리의 다른 글
JAVA CSV파일 엑셀 다운로드 후 시간 표기 오류 (0) | 2022.03.16 |
---|---|
ArrayList_Clear, new 차이점 (0) | 2021.06.11 |
자바 - 오버로딩(Overloading)과 오버라이딩(Overriding) (0) | 2021.06.02 |
자바 배열을 복사하는 방법 (깊은 복사, 얕은 복사) (0) | 2021.05.31 |
toString()과 String.valueOf() (0) | 2021.05.28 |