본문 바로가기
Java

[Java] ArrayList 개념 및 사용 방법

by _eunji_ 2022. 2. 19.

ArrayList란

ArrayList는 자바의 List 인터페이스를 상속받은 클래스 중 하나로 배열과 비슷한 선형리스트이다.

배열은 크기가 고정되는 반면 ArrayList는 크기가 가변적이다.


 

사용하기 전 import

java.util.ArrayList 클래스를 통해 ArrayList를 제공하므로 해당 클래스를 import한다.

import java.util.ArrayList;

 

 

ArrayList 선언하기

ArrayList list = new ArrayList(); // 타입 설정하지 않고 Object로 사용
ArrayList<Integer> arrayList = new ArrayList<>(); // Integer 타입
ArrayList<Integer> arrayList2 = new ArrayList<>(100); // 초기 용량 설정
ArrayList<String> arrayList2 = new ArrayList<String>(); // String 타입
ArrayList<Character> arrayList2 = new ArrayList<Character>(); // Character 타입

다양한 타입의 ArrayList를 선언할 수 있다.

 

 

값 추가하기

ArrayList는 add() 메소드를 통해 값을 추가한다.

  • add(Object)
  • add(int index, Object)
arrayList.add(1);
arrayList.add(2);
arrayList.add(null); // null값 추가 가능
arrayList.add(3,3); // index 3에 3 삽입

 

 

값 확인하기

get() 메소드를 이용하여 해당 인덱스의 값을 확인한다.

num1 = arrayList.get(0); 
num2 = arrayList.get(1); 

System.out.println(num1); //1
System.out.println(num2); //2

 

 

변경하기

set() 메서드를 사용하여 해당 위치의 값을 변경한다.

ArrayList<Integer> arrayList = new ArrayList<>();

arrayList.add(1);
arrayList.add(2);
arrayList.add(3);
        
arrayList.set(1, 1000);

System.out.println(arrayList); // [1,1000,3]

 

 

값 검색하기

ArrayList에 특정 값이 있는지 확인하고 싶을때 검색을 위한 메소드가 있다.

  • contains()
  • indexOf()

 

contains() - 특정 객체가 존재하면 true, 없으면 false를 반환한다.

ArrayList<Integer> arrayList = new ArrayList<>();

arrayList.add(1);
arrayList.add(5);
arrayList.add(4);
arrayList.add(3);
arrayList.add(6);
arrayList.add(2);
        
boolean is_contain1 = arrayList.contains(5);
boolean is_contain2 = arrayList.contains(9);

System.out.println(is_contain1); // true
System.out.println(is_contain2); // false

 

indexOf() - 특정 값이 존재할때 해당하는 인덱스를 반환하고 없다면 -1을 반환한다.

ArrayList<Integer> arrayList = new ArrayList<>();
        
arrayList.add(1);
arrayList.add(5);
arrayList.add(4);
arrayList.add(3);
arrayList.add(6);
arrayList.add(2);
        
int index1 = arrayList.indexOf(6);
int index2 = arrayList.indexOf(10);
        
System.out.println(index1); // 4
System.out.println(index2); // -1

 

 

삭제하기

  • remove(int index)
  • clear()

remove() - 해당 인덱스의 값을 삭제한다.

arrayList.remove(2); //2번 인덱스의 값을 지운다

clear() - ArrayList를 비운다.

arrayList.clear(); // arrayList를 모두 비운다

 

 

크기 구하기

size() 메소드를 사용하여 크기를 구할 수 있다.

ArrayList<Integer> arrayList = new ArrayList<Integer>();

arrayList.add(1);
arrayList.add(2);

int size = arrayList.size();
System.out.println(size); // 3

 

 

 

'Java' 카테고리의 다른 글

[Java] 자바 스택(Stack) 개념 및 사용법  (0) 2022.03.09
[Java] 자바 HashMap 사용법  (0) 2022.03.09

댓글