ArrayList는 Array의 단점인 배열의 크기를 초기화해야한다는 단점을 보완하였다.
ArrayList는 크기를 미리 정하지 않아도 계속해서 데이터를 쌓아갈 수 있다.
.
.
그러면 ArrayList를 사용해보자
.
.
package ArrayList;
import java.util.*;
public class ArrayListEx {
public static void main(String[] args) {
ArrayList<Integer> list1 = new ArrayList<Integer>(); // ArrayList 선언
list1.add(Integer.valueOf(5));
list1.add(4);
list1.add(2);
list1.add(0);
list1.add(1);
list1.add(3);
System.out.println("list1의 내용 : ");
System.out.println(list1); // toString으로 출력 [5, 4, 2, 0, 1, 3]
ArrayList list2 = new ArrayList(list1.subList(1, 4)); // list1에 있는 인덱스 번호 1번부터 4번을 잘라서 저장한다.
list2.add("A"); // 마지막 부분에 추가
list2.add(2, "AA"); // 인데스 위치에 추가
System.out.println("list2의 내용 : ");
System.out.println(list2); // toString으로 출력 [4, 2, 0]
Collections.sort(list1); // list1 정렬
System.out.println("list1 정렬 :");
System.out.println(list1);
// ArrayListㅇ에서 특정 값이 존재하는 지 확인
System.out.println("list1에 2가 들어있는지 확인 : " + list1.contains(2));
System.out.println("list1에서 2인 위치 : " + list1.indexOf(2));
// list1에서 list2의 내용만 남기고 모두 삭제
list1.retainAll(list2);
System.out.println("list1에서 list2의 내용만 남기고 모두 삭제 : "); // [4, 2, AA, 0, A] - [0, 1, 2, 3, 4, 5]
System.out.println(list1); // [0, 2, 4]
// 특정 항목 삭제
list1.remove(2); // list1에서 인덱스 번호 2번을 제거
System.out.println(list1); // [0, 2]
}
}
.
.
728x90
반응형
'Java > 본격 Java 컬렉션' 카테고리의 다른 글
[Java] LinkedList 활용하기 ( + peek, poll 메소드 사용) (0) | 2020.07.13 |
---|---|
[Java] ArrayList에서 순서바꾸기( + Bubble Sort) (0) | 2020.07.13 |
[Java] Collection_desc (0) | 2020.07.03 |
[Java] Arrays (0) | 2020.07.03 |
[Java] Iterator<E> (0) | 2020.07.03 |