Java & Kotlin

[Java 객체지향] ArrayList

Sue 2022. 1. 30. 09:02

java util 패키지에서 제공되는 ArrayList

  • 기존의 객체 배열은 길이를 정하고 꽉 찼을 경우 크기가 더 큰 배열을 만들어서 복사했어야함 (번거로움)
  • 배열의 요소를 추가하거나 삭제할 때 요소의 이동을 따로 구현하지 않아도 됨
  • 객체 배열을 더 효율적으로 관리하기 위해 제공되는 클래스

 

주요 메서드

  • boolean add(E e) : 요소 하나를 배열에 추가. E는 요소의 자료형
  • int size() : 배열의 요소 전체 개수 반환
  • E get(int index) : index 위치에 있는 요소 반환 (제거는 X)
  • E remove(int index) : index 위치에 있는 요소 제거하고 값 반환
  • boolean isEmpty() : 배열이 비어 있는지 여부 반환

ArrayList 클래스에 마우스 올리고 F1을 누르면 java doc에서 더 많은 메서드를 확인할 수 있음.

 

예제 코드

ArrayListTest.java
package ch23;

import java.util.ArrayList;	// java util 패키지의 ArrayList 클래스 사용 명시
import ch21.Book;	// ch21 패키지의 Book 클래스 사용 명시

public class ArrayListTest {

	public static void main(String[] args) {
		
		ArrayList<Book> library = new ArrayList<>(); // ArrayList 선언부 (어떤 객체를 넣을지 설정)

		library.add(new Book("태백산맥1 ", "조정래"));	// add 할때 객체 생성해서 넣음
		library.add(new Book("태백산맥2 ", "조정래"));
		library.add(new Book("태백산맥3 ", "조정래"));
		library.add(new Book("태백산맥4 ", "조정래"));
		library.add(new Book("태백산맥5 ", "조정래"));
		
		for ( int i = 0 ; i < library.size() ; i ++ ) {	// 배열 크기만큼 요소 꺼내서 정보 출력
			library.get(i).showBookInfo();
		}
	}

}

 

수행 결과
태백산맥1 ,조정래
태백산맥2 ,조정래
태백산맥3 ,조정래
태백산맥4 ,조정래
태백산맥5 ,조정래