ArrayList
2023. 3. 25. 18:54ㆍ자바
728x90
<선언하기>
일반 배열은 선언할 때 int [] arr=new int [20];처럼 크기를 명시해줘야 하지만
ArrayList는 가변 배열로 크기를 명시해주지 않아도 된다.
ArrayList <Integer> list =new ArrayList<Integer>();
ArrayList와 같은 컬렉션 클래스로 데이터를 다룰 때 그 데이터는 기본적으로 객체만 가능합니다.
따라서 char, int, float와 같은 기본형은 사용할 수 없고 대신 Integer와 같은 Wrapper클래스를 사용해야 합니다.
하지만, 오토박싱(auto boxing)과 오토언박싱(auto unboxing)으로 인해 사용자는 마치 기본형을 다룰 수 있는 것처럼 사용할 수 있습니다.
<길이 구하기>
일반 배열 int [] arr이 있다고 하면 길이는 arr.length로 구하면 되는 반면
ArrayList는 list.size()로 구해야 한다.
<원소 추가하기>
list.add(넣고 싶은 원소)로 추가한다.
<원소값 가져오기>
list.get(가져오고 싶은 원소의 인덱스)로 원소값을 가져온다.
ArrayList에서 특정 인덱스의 객체를 제거하게 되면, 제거한 객체의 인덱스부터 마지막 인덱스까지 모두 앞으로 1칸씩 앞으로 이동한다. 객체를 추가하게 되면 1칸씩 뒤로 이동하게 된다. 인덱스 값을 유지하기 위해서 추가/삭제 시 전체 객체가 위치가 이동한다.
따라서 잦은 원소의 이동, 삭제가 발생할 경우 ArrayList보다 LinkedList를 사용하는 것이 좋다.
728x90
'자바' 카테고리의 다른 글
| Set 컬렉션 정리 (0) | 2023.03.25 |
|---|---|
| 정수의 최솟값 구하기 (0) | 2023.03.25 |
| 정적 배열 정리 (0) | 2023.03.25 |
| 컬렉션 프레임워크 (0) | 2022.12.11 |
| 네트워크 프로그래밍 (0) | 2022.12.10 |