ArrayList
: 기존의 Vector를 개선한 것으로 구현원리와 기능적으로 동일
↳ Vector : 동기화O, ArrayList: 동기화X 라는 차이점
- List 인터페이스를 구현하므로, 저장순서가 유지되고 중복을 허용한다.
- 데이터의 저장공간으로 배열을 사용한다.(배열기반)
ArrayList의 메소드
1. 생성자
2. 추가
3. 삭제
4. 검색
5.
예제
ArrayList에 저장된 객체의 삭제과정
1) ArrayList에 저장된 세 번째 데이터(data[2])를 삭제하는 과정.
list.remove(2);
를 호출
↳ 마지막 데이터를 삭제하는 경우, 1번의 과정(배열의 복사)은 필요 없다.
2) ArrayList에 저장된 첫번째 객체부터 삭제하는 경우 (배열 복사 발생) → 잘못된 방법
3) ArrayList에 저장된 마지막 객체부터 삭제하는 경우 (배열 복사 발생안함)
출처
- 자바의 정석 기초편 : ch 11- 7~11