ArrayList

Java

ArrayList vs LinkedList 차이 완벽 정리 (성능 비교 + 내부 구조 + 실무 사용법)

자바에서 컬렉션 배우면 거의 무조건 나오는 비교가 있다.👉 ArrayList vs LinkedList둘 다 List 인터페이스를 구현해서 사용법은 비슷하다.List list = new ArrayList();List list = new LinkedList();근데 내부 구조가 완전히 다르다.이 차이를 이해하면:✔ 어떤 상황에서 더 빠른지✔ 왜 성능 차이가 나는지✔ 실무에서 뭘 더 많이 쓰는지이런 게 전부 이해된다.ArrayList 란?👉 배열(Array) 기반 리스트내부적으로는 진짜 배열을 사용한다.대충 이런 느낌:[ A ][ B ][ C ][ D ]메모리상에 데이터가 연속적으로 저장된다.LinkedList 란?👉 노드(Node) 연결 기반 리스트각 데이터가 서로 연결되어 있다.대충 이런 구조:[A]..

Java

UnsupportedOperationException 완벽 정리 (자바 List.of, Arrays.asList 수정 오류 원인 + 해결 방법)

자바 컬렉션 쓰다가 갑자기 이런 에러가 나오면 꽤 당황한다.👉 UnsupportedOperationException 코드는 멀쩡해 보이는데,add나 remove 했다고 바로 터지는 경우가 많다.이거 원인만 정확히 알면, 실무에서 바로 해결 가능하다.UnsupportedOperationException 이란?👉 "지원하지 않는 동작을 수행하려고 할 때 발생하는 예외"즉,✔ 해당 객체가 그 기능을 원래부터 지원 안 하는데✔ 우리가 억지로 실행하려고 할 때 터진다가장 많이 터지는 상황 (핵심)👉 "수정 불가능한 컬렉션을 수정하려고 할 때"대표 예제 1 (List.of)import java.util.*;public class Main { public static void main(String[] ar..

Java

ConcurrentModificationException 완벽 정리

자바로 컬렉션(List, Set 등) 다루다 보면, 처음엔 잘 모르고 지나가다가 갑자기 만나게 되는 예외가 있다.👉 ConcurrentModificationException이건 처음 보면 “동시성 문제인가?” 싶지만,실제로는 반복 중에 컬렉션을 건드렸을 때 터지는 예외다.ConcurrentModificationException 이란?👉 "컬렉션을 반복(iteration)하는 도중에 구조를 변경하면 발생하는 예외"여기서 핵심은 이거다:✔ 반복 중✔ 구조 변경 (add, remove 등)이 두 개가 동시에 일어나면 터진다.가장 기본적인 예제import java.util.*;public class Main { public static void main(String[] args) { Lis..

Coding_Slowly
'ArrayList' 태그의 글 목록