| 참고 | 배열의 저장 공간 부족해서 새로운 배열을 만들 때 어떻게 해야 하는지 누가 물어본다면, 코드로 작성할 순 없어도, 3단계로 얘기할 수 있어야 한다.
크기 변경을 피하기 위해 충분히 큰 배열을 생성하면, 메모리가 낭비됨
처음부터 저장하려는 객체의 개수를 예측해서, 그것보다 조금만 더 넉넉하게 ArrayList(int inital)로 배열 길이를 지정해주면 좋다.
2. 비순차적인(중간에) 데이터의 추가 또는 삭제에 시간이 많이 걸린다.
데이터를 추가하거나 삭제하기 위해, 다른 데이터를 옮겨야 함.
그러나 순차적인 데이터 추가(끝에 추가)와 삭제(끝부터 삭제)는 빠르다.
데이터를 추가하거나 삭제하기 위해, 다른 데이터를 옮겨야 함.
'비순차적인 데이터의 추가 또는 삭제'라는 것은, 배열 중간에 있는 데이터를 삭제하거나 새로 추가하는 것을 말한다. 중간에 있는 데이터를 지우려면, 뒤에 있는 데이터를 옮겨야 하는데, 뒤에 있는 데이터 엄청 많으면, 그만큼의 데이터를 다 옮겨야 한다. 그래서 시간이 많이 걸린다.
그러나 순차적인 데이터 추가(끝에 추가)와 삭제(끝부터 삭제)는 빠르다.
중간에 있는 데이터의 추가 및 삭제는 시간이 많이 걸리지만, 맨 끝에 있는 데이터의 삭제 또는 추가는 시간이 많이 걸리지 않는다. 즉, 순차적삭제는 바르다.