이번 포스팅은 Java에서 ArrayList가 비어 있는지 확인하는 방법을 소개합니다.
size() 메서드
ArrayList 클래스의 size() 메서드를 사용하여 ArrayList가 비어 있는지 확인할 수 있습니다. 크기가 0보다 크면 ArrayList에 요소가 존재한다는 의미이므로 비어 있지 않고 크기가 0이면 요소가 없으므로 비어 있음을 의미합니다.
다음 예제는 ArrayList의 size() 메서드 사용 방법을 보여줍니다.
public class Main {
public static void main(String args[]) {
ArrayList<Integer> al1 = new ArrayList<Integer>(
Arrays.asList(1, 2, 3, 4, 5)
);
ArrayList<Integer> al2 = new ArrayList<Integer>();
if(al1.size() == 0) {
System.out.println("al1 object is Empty");
} else {
System.out.println("al1 object is Not-Empty");
}
if(al2.size() == 0) {
System.out.println("al2 object is Empty");
} else {
System.out.println("al2 object is Not-Empty");
}
}
}
실행 결과
al1 object is Not-Empty
al2 object is Empty
isEmpty() 메서드
ArrayList 클래스의 isEmpty() 메서드는 ArrayList의 size() 메서드를 내부적으로 호출합니다. isEmpty() 메서드는 ArrayList에 요소가 없으면 true를 반환하고 그렇지 않으면 false를 반환합니다.
다음 예제는 ArrayList의 isEmpty() 메서드 사용 방법을 보여줍니다.
public class Main {
public static void main(String args[]) {
ArrayList<Integer> al1 = new ArrayList<Integer>(
Arrays.asList(1, 2, 3, 4, 5)
);
ArrayList<Integer> al2 = new ArrayList<Integer>();
if(al1.isEmpty()) {
System.out.println("al1 object is Empty");
} else {
System.out.println("al1 object is Not-Empty");
}
if(al2.isEmpty()) {
System.out.println("al2 object is Empty");
} else {
System.out.println("al2 object is Not-Empty");
}
}
}
실행 결과
al1 object is Not-Empty
al2 object is Empty
null로 초기화
비어 있는 ArrayList는 객체는 존재하지만, 요소가 없는 경우를 말합니다. 하지만, null로 초기화하면 힙 메모리에 ArrayList 객체가 없다는 것을 의미합니다.
위에서 소개한 size(), isEmpty() 메서드를 사용하여 null로 초기화된 ArrayList를 체크하면 NullPointerException 예외가 발생합니다.
public class Main {
public static void main(String args[]) {
// ArrayList 객체를 null로 초기화합니다.
ArrayList<Integer> al = null;
// NullPointerException 예외가 발생합니다.
// isEmpty() 메서드도 동일한 예외가 발생합니다.
if(al.size() == 0) {
System.out.println("al object is Empty");
} else {
System.out.println("al object is Not-Empty");
}
}
}
따라서, ArrayList가 비어 있는지 확인해기 위해서는 null을 반드시 확인해야 합니다.
다음 예제는 null 체크와 ArrayList가 비어 있는지 확인하는 방법을 보여줍니다.
public class Main {
public static void main(String args[]) {
ArrayList<Integer> al1 = null;
ArrayList<Integer> al2 = null;
if(al1 == null || al1.size() == 0) {
System.out.println("al1 object is Empty");
} else {
System.out.println("al1 object is Not-Empty");
}
if(al2 == null || al2.isEmpty()) {
System.out.println("al2 object is Empty");
} else {
System.out.println("al2 object is Not-Empty");
}
}
}
실행 결과
al1 object is Empty
al2 object is Empty
정리
- ArrayList가 비어 있는지 확인하는 방법으로 ArrayList 클래스의 size() 메서드와 isEmpty() 메서드를 사용합니다.
- ArrayList를 null로 초기화할 수 있으므로 null인지 체크할 필요가 있습니다.
'Java > 컬렉션' 카테고리의 다른 글
[Java]ArrayList 특정 위치에 값 추가 (0) | 2022.06.23 |
---|---|
[Java]ArrayList 반복문 사용 방법 (0) | 2022.06.23 |
[Java]ArrayList 또는 List 최대, 최소, 합계, 평균 구하기 (0) | 2022.06.22 |
[Java]ArrayList 다중 삭제 (0) | 2022.06.22 |
[Java]ArrayList 초기화 방법 (0) | 2022.06.20 |
댓글