자유로이

자바에서 List null 체크하는 법 본문

IT/프로그래밍

자바에서 List null 체크하는 법

wooyaa 2019. 4. 24. 10:54

코딩을 하다보면 생각지도 못했던 데이터에서 NullPointerException을 보게됩니다.

오늘은 List에 대한 null 체크를 하는 방법을 소개해드립니다.

 

저같은 경우 List에 dao에서 조회한 데이터를 넣어서 데이터를 조작하는데요.

조회된 데이터가 없을경우를 대비해 List의 공백을 체크해주면 좋습니다.

방법은 isEmpty()를 사용하는건데요

java.util.List 에서 제공되는 메소드이고

반환은 boolean으로 비어있으면 true, 값이 있으면 false를 반환하게 되어있습니다.

import java.util.ArrayList;
import java.util.List;

public class isEmptyTest {

	public static void main(String[] args) {
		
		//리스트 선언
		List list = new ArrayList();
        
        	//list에 어떤한 값을 넣을 때 그 값이 없을경우
        
        	//리스트 값 체크
		if(list.isEmpty()) {
			
			//리스트에 값이 존재하지 않음
			System.out.println("List is empty");
		}

출력

list value :[]
List is empty

이처럼 list에는 생성만 됬거나, 입력된 값이 없을 경우 [] 빈 값으로 들어갑니다.

흔히 하는 실수로 list 를 "list == null"로 체크하시는 분들이 있는데

이러면 무조건 조건을 성립하지 못하게됩니다.

 

List는 isEmpty()로 확인하세요.

 

null 체크는 List안에 있는 데이터들에 대하여 null 체크하세요.

 

위에 코드에서 조금 추가하여 List의 빈값과 데이터의 null값 체크 하는법에대해 알려드립니다.

import java.util.ArrayList;
import java.util.List;

public class isEmptyTest {

	public static void main(String[] args) {
		
		//리스트 선언
		List list = new ArrayList();
		
		//테스트 값입력
		list.add(null);
		list.add(1);
		list.add("test");
		
		System.out.println("list value :" + list);

		//리스트 값 체크
		if(list.isEmpty()) {
			
			//리스트에 값이 존재하지 않음
			System.out.println("List is empty");
		} 
		else {
			
			//리스트에 값이 존재
			System.out.println("List is not empty");
		
			for(int i = 0; i<list.size(); i++) {
				
				//리스트 안에 값에 대한 null 체크
				if(list.get(i) == null) {
					System.out.println("list["+i+"]의 값은 null 입니다. ");
				}
			}
		}
	}
}

출력

list value :[null, 1, test]
List is not empty
list[0]의 값은 null 입니다. 

List에는 null, 1, test 라는 null과 숫자,문자열이 들어가 있습니다.

반복문을 돌면서 데이터의 null을 체크해주고 있습니다.

 

이해에 도움이 되었나요?

null체크에 대한 부분을 생각하면서 코딩을 하시길 바랍니다.

그럼 글을 마치겠습니다~

 

 

 

Comments