본문 바로가기
Java

[Java] String Null or Empty 체크

by bryan.oh 2023. 3. 2.
반응형

Java
문자열의 값이 null 또는 빈 문자열(empty) 확인 방법

Null 체크

String str = null; 
if (str == null) { 
    System.out.println("문자열이 null입니다."); 
}

 

빈 문자열(empty) 체크

String str = ""; 
if (str.length() == 0) { 
    System.out.println("문자열이 빈 문자열입니다."); 
}
 
이때, 만약 str 이 null 이면 오류가 발생합니다.
null 일 가능성이 있다면 아래와 같이 체크 해야합니다.
 

null 또는 빈 문자열(empty) 체크

String str = null; 
if (str == null || str.length() == 0) { 
    System.out.println("문자열이 null 또는 빈 문자열입니다."); 
}

 

isBlank() 메소드를 사용한 빈 문자열(empty) 체크

Java 11 버전부터는 문자열이 빈 문자열(empty) 또는 공백 문자열(whitespace)인지 확인하는 isBlank() 메소드를 제공합니다.

String str = ""; 
if (str.isBlank()) { 
    System.out.println("문자열이 빈 문자열이거나 공백 문자열입니다."); 
}

 

위의 방법들 중 어떤 것을 선택하느냐는 상황에 따라 다릅니다.

예를 들어, 문자열이 null일 경우에만 처리해야 하는 경우에는 null 체크를 사용하면 되고, 빈 문자열(empty)이나 공백 문자열(whitespace)도 함께 처리해야 하는 경우에는 isBlank() 메소드를 사용하는 것이 좋습니다.

 

라이브러리 사용

라이브러리를 사용하는 방법도 있습니다.

대표적인 라이브러리로 Apache Commons Lang 라이브러리와 Spring Framework가 제공하는 StringUtils 클래스가 있습니다.

Apache Commons Lang 라이브러리 사용 방법

Apache Commons Lang 라이브러리를 사용하려면 다음과 같이 라이브러리를 추가해야 합니다.

Gradle:

implementation 'org.apache.commons:commons-lang3:3.12.0'

Maven:

<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-lang3</artifactId>
    <version>3.12.0</version>
</dependency>

빈 문자열(empty) 체크를 하는 예시 코드는 다음과 같습니다.

import org.apache.commons.lang3.StringUtils; 

String str = ""; 
if (StringUtils.isEmpty(str)) { 
    System.out.println("문자열이 빈 문자열입니다."); 
}

StringUtils.isEmpty() 메소드는 문자열이 null이거나 길이가 0인 경우 true를 반환합니다.

 

Spring Framework의 StringUtils 클래스 사용 방법

Spring Framework에서 제공하는 StringUtils 클래스를 사용하려면 Spring Framework를 의존성으로 추가해야 합니다.

Gradle:

implementation 'org.springframework:spring-core:5.3.13'

Maven:

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-core</artifactId>
    <version>5.3.13</version>
</dependency>

빈 문자열(empty) 체크를 하는 예시 코드는 다음과 같습니다.

import org.springframework.util.StringUtils; 

String str = ""; 
if (StringUtils.isEmpty(str)) { 
    System.out.println("문자열이 빈 문자열입니다."); 
}

StringUtils.isEmpty() 메소드는 문자열이 null이거나 길이가 0인 경우 true를 반환합니다.

 

위의 두 라이브러리는 Java에서 문자열 처리를 할 때 유용하게 사용될 수 있습니다.

하지만 라이브러리를 사용하기 위해 추가적인 의존성을 추가해야 하므로, 프로젝트의 규모와 상황에 따라 선택적으로 사용해야 합니다.

728x90
반응형

댓글