웹 개발 기초/자바 문법

배열, ArrayList 클래스

sungw00 2022. 12. 2. 21:54
728x90

기존 배열의 단점과 ArrayList

기본 배열은 프로그램에서 사용하기 위해 항상 배열 길이를 정하고 시작한다. 

하지만 기존에 설계했던 숫자보다 더 많은 배열의 크기가 필요하게 되면, 배열을 사용하는 도중 배열 길이를 변경할 수 없다는 단점이 있다.

 

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

ArrayList 클래스는 객체 배열을 관리할 수 있는 멤버 변수와 메서드를 제공하기때문에 사용 방법만 알아두면 편하게 사용할 수 있다.

주로 사용하는 ArrayList 클래스의 메서드

add(n1, n2) 요소 하나를 배열에 추가(길이에 상관 없음)
size() 요소 전체 개수를 반환
get(0) 0번째 인덱스의 값을 반환
remove(0) 0번째 인덱스의 값을 제거하고 그 값을 반환(요소가 자동으로 이동)
isEmpty() 배열이 비어 있는지 확인

 

ArrayList 클래스 사용하기

ArrayList를 사용하는 기본 형식은 아래와 같다.

// 예시
ArrayList<E> 배열 이름 = new ArrayList<E>();
// 실제 사용 형식
ArrayList<Student> students = new ArrayList<Student>();

ArrayList를 사용한다면 자바 클래스를 선언하기 전에 import java.util.ArrayList; 문장을 빼먹지 말자.

 

예시로 ArrayList 클래스를 사용하여 학생에 대한 정보를 추가하고 출력하는 코드는 다음과 같다.

package array;
import java.util.ArrayList;

public class ArrayListTest {
	public static void main(String[] args) {
        ArrayList<Student> students = new ArrayList<Student>();

        students.add(new Student(1, "김하나");
        students.add(new Student(2, "이두울");
        students.add(new Student(3, "박세엣");
        students.add(new Student(4, "최네엣");
        students.add(new Student(5, "조다섯");

        for(int i=0; i < students.size(); i++) {
            Student student = students.get(i);
            student.showStudentInfo();
        }

        for(Student student : students) {
            student.showStudentInfo();
    	}
    }
}
728x90