JAVA컬렉션List

개념

순서가 있고, 중복을 허용하는 자료 구조를 리스트(List)라 한다. 앞서 배운 ArrayList, LinkedList 는 내부 구현만 다르며 같은 기능을 제공한다. 위의 공통 기능들을 인터페이스로 추상화 한 것이 List이다.

리스트를 구현하고, 실행하다보면 의존관계 주입의 시점에 따라서 의존관계의 종류가 달라지는 것을 볼 수 있다. ( *컴파일 타임, 런타임 의존 관계 )

배열 리스트 vs 연결 리스트

  • 배열 리스트의 최적화
    1. 자바 내부에서 메모리 고속 복사를 활용해 성능이 최적화된다.

배열 리스트를 사용하는 것이 유리하나 드물게 첫번째 데이터에 접근, 삭제가 많은 경우에는 LinkedList를 사용 하는 것이 유리하다.