-
[자바(JAVA)] ArrayList의 삭제과정, ArrayList전체삭제 방법자바의 정석 2023. 7. 20. 05:34728x90
🔷 ArrayList에 저장된 세 번째 데이터(data[2])를 삭제하는 과정
* 인덱스가 2인 객체를 삭제하길 원함
1. 삭제할 데이터기준으로 아래 데이터들이 한 칸씩 위로 복사되어 삭제할 데이터를 덮어쓴다.
2. 마지막 데이터는 그대로 남아있기 때문에 null로 변경한다.3. 데이터의 사이즈를 줄인다
*삽입할 경우에는 반대로 진행된다.
마지막 데이터만 삭제하는 경우에는 2번과정이 진행되지 않음
되도록 2번은 진행되지 않게끔 설계해야됨
🔷 ArrayList에 저장된 첫 번째 데이터(data[2])부터 삭제하는 과정(배열 복사 발생)
- List.length = 5
- 0~4번 인덱스까지 순차적으로 삭제를 원했음
- 0번 인덱스(값:0)을 삭제하니 한칸씩 앞으로 땡겨짐
- 값1을 삭제하려 인덱스 1을 삭제했으나 현재기준 인덱스1은 값:2라서 원하는 결과대로 나오지 않음
-> 마지막 인덱스부터 삭제하기
🔷 ArrayList에 저장된 마지막 데이터부터 삭제하는 과정(배열 복사 발생안함)
장점1: 원하는 결과를 얻을 수 있다.
장저2: 처리속도가 빠르다
728x90'자바의 정석' 카테고리의 다른 글
[자바(JAVA)] Iterator, ListIterator, Enumeration (0) 2023.07.23 [자바(JAVA)] Stack & Queue의 활용(PriorityQueue, Deque) (0) 2023.07.23 [자바(JAVA)] Stack & Queue의 구조와 특징 (0) 2023.07.20 [자바(JAVA)] ArrayList의 정의와 메서드정리 (0) 2023.07.20 [자바(JAVA)] 컬렉션 프레임웍 /List, Set, HashSet, TreeSet, Map의 정의와 사용메서드 정리 (0) 2023.07.19