Java Program to Check if a String is Empty or Null

In this program, you’ll learn to check if a string is empty or null using if-else statement and functions in Java.

Example 1: Check if String is Empty or Null

  1. public class Null {
  2. public static void main(String[] args) {
  3. String str1 = null;
  4. String str2 = "";
  5. if(isNullOrEmpty(str1))
  6. System.out.println("First string is null or empty.");
  7. else
  8. System.out.println("First string is not null or empty.");
  9. if(isNullOrEmpty(str2))
  10. System.out.println("Second string is null or empty.");
  11. else
  12. System.out.println("Second string is not null or empty.");
  13. }
  14. public static boolean isNullOrEmpty(String str) {
  15. if(str != null && !str.isEmpty())
  16. return false;
  17. return true;
  18. }
  19. }

When you run the program, the output will be:

str1 is null or empty.
str2 is null or empty.

In the above program, we’ve two strings str1 and str2. str1 contains null value and str2 is an empty string.

We’ve also created a function isNullOrEmpty() which checks, as the name suggests, whether the string is null or empty. It checks it using a null check using != null and isEmpty() method of string.

In plain terms, if a string isn’t a null and isEmpty() returns false, it’s not either null or empty. Else, it is.

However, the above program doesn’t return empty if a string contains only whitespace characters (spaces). Technically, isEmpty() sees it contains spaces and returns false. For string with spaces, we use string method trim() to trim out all the leading and trailing whitespace characters.


Example 2: Check if String with spaces is Empty or Null

  1. public class Null {
  2. public static void main(String[] args) {
  3. String str1 = null;
  4. String str2 = " ";
  5. if(isNullOrEmpty(str1))
  6. System.out.println("str1 is null or empty.");
  7. else
  8. System.out.println("str1 is not null or empty.");
  9. if(isNullOrEmpty(str2))
  10. System.out.println("str2 is null or empty.");
  11. else
  12. System.out.println("str2 is not null or empty.");
  13. }
  14. public static boolean isNullOrEmpty(String str) {
  15. if(str != null && !str.trim().isEmpty())
  16. return false;
  17. return true;
  18. }
  19. }

When you run the program, the output will be:

str1 is null or empty.
str2 is null or empty.

Here in the isNullorEmpty(), we’ve added an extra method trim() which removes all leading and trailing whitespace characters in the given string.

So, now if a string contains spaces only, the function returns true.