어제 오늘 내일

[Java String] String.isEmpty() – 문자열이 비어있는지 확인하기 본문

IT/Java

[Java String] String.isEmpty() – 문자열이 비어있는지 확인하기

hi.anna 2025. 9. 16. 02:33

자바에서 문자열을 다루다 보면, 값이 비어 있는지 확인해야 하는 경우가 많습니다.
이럴 때 가장 직관적이고 간단한 방법이 바로 isEmpty()입니다.

 

1. 기본 사용법

public boolean isEmpty()
  • 문자열의 길이가 0이면 true 반환
  • 한 글자라도 있으면 false 반환
String str1 = "";
String str2 = "Java";

System.out.println(str1.isEmpty()); // true
System.out.println(str2.isEmpty()); // false

👉 str1은 아무 문자도 없기 때문에 true, str2"Java"가 있으므로 false입니다.

 

2. null과는 다름

주의할 점은 isEmpty()null 체크가 아님입니다.
문자열이 아예 생성되지 않은 null 상태에서 isEmpty()를 호출하면 NullPointerException이 발생합니다.

String str = null;

if (str != null && str.isEmpty()) {
    System.out.println("빈 문자열");
}

👉 따라서 null 가능성이 있는 경우에는 반드시 null 체크를 먼저 해줘야 합니다.

 

3. 공백 문자열은 비어있는 게 아님

String str = "   ";
System.out.println(str.isEmpty()); // false

👉 " "는 공백 문자로 채워져 있지만, 길이가 3이므로 비어 있지 않다고 판정됩니다.
만약 공백만 있는 문자열도 "비어 있다"로 취급하려면 isBlank()를 사용해야 합니다.

 

4. 실전 활용 예제

사용자 입력 검증

Scanner sc = new Scanner(System.in);
System.out.print("이름을 입력하세요: ");
String name = sc.nextLine();

if (name.isEmpty()) {
    System.out.println("이름은 반드시 입력해야 합니다!");
}

👉 사용자가 아무것도 입력하지 않고 엔터만 친 경우를 간단히 체크할 수 있습니다.

API 응답 값 확인

String response = getApiResponse();

if (!response.isEmpty()) {
    System.out.println("응답: " + response);
}

👉 외부 시스템에서 빈 문자열이 올 수 있는 경우 안정적으로 체크 가능합니다.

 

5. 정리

  • isEmpty() → 문자열 길이가 0인지 확인 ("")
  • null 값에는 사용 불가 → 반드시 null 체크 필요
  • " "(공백만 있는 문자열)은 false
  • 사용자 입력 검증, API 응답 처리 등에서 자주 활용

👉 문자열이 아예 비었는지 확인하고 싶다면 String.isEmpty()가 가장 간단한 방법이다!

 

 

반응형
Comments