SHUSTORY

07-3 ArrayList 클래스 사용하기 본문

프로그래밍/JAVA

07-3 ArrayList 클래스 사용하기

어서오시우 2023. 2. 25. 10:58
728x90

기존 배열의 단점과 ArrayList

기존 배열은 항상 배열 길이를 정하고 시작했다.

그런데 배열을 사용하는 도중에 배열 길이 변경이 불가하며

배열은 중간에 있는 요소를 비워 둘 수 없으므로 배열을 수정하기 복잡하다는 불편함이 있다.

 

자바는 객체 배열을 더욱 쉽게 사용할 수 있도록 객체 배열 클래스 ArrayList를 제공한다.

ArrayList는 객체 배열을 관리할 수 있는 멤버 변수와 메서드를 제공한다.

ArrayList 클래스의 주요 메서드

메서드 설명
boolean add(E e) 요소 하나를 배열에 추가한다.
E는 요소의 자료형을 의미한다.
int size( ) 배열에 추가된 요소 전체 개수를 반환한다.
E get(int index) 배열의 index 위치에 있는 요소를 반환한다.
E remove(int index) 배열의 index 위치에 있는 요소 값을 제거하고
그 값을 반환한다.
boolean isEmpty 배열이 비어 있는지 확인한다

add( ) 메서드를 통해 배열 길이와 상관없이 객체를 추가할 수 있다.

배열의 길이가 추가될 요소 개수보다 부족할 경우 배열을 더 키우도록 구현되어 있다.

또한 배열 중간의 어떤 요소 값이 제거되면 그다음 요소 값을 하나씩 앞으로 이동하도록 구현되어 있다.

 

ArrayList 클래스 활용하기

ArrayList 문법

<E>와 같은 형태를 '제네릭 자료형'이라고 한다.

ArrayList를 사용할 때 어떤 자료형 객체를 사용하여 프로그래밍할 것인지 선언할 수 있다.

배열을 선언할 때 <E> 부분에 사용할 객체의 자료형(E)을 쓰면 된다.

위와 같이 작성할 수 있다.

 

ArrayList는 java.util 패키지에 구현되어 있는 클래스로

ArrayList를 사용하기 위해서는 컴파일러에게 ArrayList가 어디에 구현되어 있는지 알려줘야 한다.

이렇게 내 코드에 없는 클래스를 가져와 사용할 때 클래스가 어디에 구현되어 있는지 알려주기 위해

코드 맨 위에 선언하는 것을 임포트(import) 해준다고 한다.

즉 ArrayList를 사용하려면 코드 상단에 import java.util.ArrayList; 를 작성하도록 한다.

 

예제01

 

기본 배열에서는 [ ] 안에 배열 전체 길이를 미리 지정해야 했다.

하지만 ArrayList를 생성할 때는 미리 지정할 필요 없이 add( ) 메서드를 사용해 생성자만 호출하면 된다.

ArrayList는 객체 배열이므로 8~12행과 같이 각 인스턴스를 생성해서 배열의 요소로 추가한다.

요소를 하나 가져오는 메서드는 get( )이다.

예제01에서는 매개변수로 몇 번째 요소를 가져올 것인지 지정했으며

size( ) 메서드를 통해 배열에 유효한 값이 저장된 요소 개수를 반환하였다.

 

예제

arrayList.zip
0.00MB

'프로그래밍 > JAVA' 카테고리의 다른 글

08-2 상속에서 클래스 생성과 형 변환  (0) 2023.02.25
08-1 상속  (0) 2023.02.25
07-2 다차원 배열  (0) 2023.02.25
07-1 배열  (0) 2023.02.24
06-4 변수 유효 범위  (0) 2023.02.23