Java 공부

[자료구조] List, LinkedList, ArrayList, Vector...

고줭 2022. 5. 7. 18:28
ArrayList는 List라는 인터페이스를 구현한 구현객체

라는 말을 들어보셧을겁니다.

List interface는 선언만해놓고 구현은 하지않은 틀이고, ArrayList는 List라는 틀로 구현한 구현체

ArrayList만 아니라 LinkedList, Vector도 생성가능

// 사용불가 List<String> strList = new List<>();

List<String> strList = new LinkedList<>();
List<String> strList = new ArrayList<>();
List<String> strList = new Vector<>();

 

LinkedList의 가장 큰 특징은 데이터, 다음 대상의 주소를 가지고 있음

ArrayList, Vector는 Resizable-array(가변배열) 크기를 정해놓으면 변경 못하는 배열과 달리 가변적으로 크기가 생성됨

multi-thread환경에서는 Vector가 권장됨