본문 바로가기
💻CS/자료구조

[JAVA] ArrayList

by Dong Ik 2022. 1. 18.

배열은 크기가 고정이지만 ArrayList는 크기가 가변적이다.

add()remove()를 이용하여 data를 넣고 뺄 수 있다.

 

 

사용 방법

 

1. 다음을 import 해준다.

import java.util.ArrayList;

 

2. ArrayList를 생성한다. <>에는 들어갈 data type을, ()에는 초기용량를 넣어준다.

보통 al1과 같이 생략 한다.

ArrayList<Integer> al = new ArrayList();
ArrayList al1 = new ArrayList();

 

3. add()remove()를 이용하여 데이터 추가 및 제거를 한다.

remove()는 해당 index가 가진 데이터를 제거하며 빈 공간은 뒤에서 하나씩 앞을 채워준다.

 

al.add(0);
al.add(1);
al.add(2);
al.add(3);
        
al.remove(1);
al.remove(1);

 

4. 끝!

import java.io.IOException;
import java.util.ArrayList;

public class Main {
    public static void main(String[] args) throws IOException {

        ArrayList<Integer> al = new ArrayList();

        al.add(0);
        al.add(1);
        al.add(2);
        al.add(3);

        al.remove(1);
        al.remove(1);

        System.out.println(al);
    }
}

수행 결과 : [0, 3]

인덱스가 1이 가리키는 값을 remove 한 후 앞으로 밀리는 과정을 두 번 반복했기 때문에 [0, 3]이 남았다.

 

추가 기능

 

1. clear()를 이용하여 ArrayList 초기화

al.clear();

 

2. size()를 이용하여 ArrayList크기 반환

al.size();

 

3. contains()indexOf()를 이용한 값 찾기

System.out.println(al.contains(3));
System.out.println(al.indexOf(3));

수행 결과 : true
               3

 

contains()는 값이 존재할 시 true를 반환,

indexOf()는 특정 index 안에 값이 존재할 시 값 반환, 없을 시 -1반환