HiveBrain v1.2.0
Get Started
← Back to all entries
patternjavaCritical

Check whether a String is not Null and not Empty

Submitted by: @import:stackoverflow-api··
0
Viewed 0 times
emptycheckandwhethernotstringnull

Problem

How can I check whether a string is not null and not empty?

public void doStuff(String str)
{
    if (str != null && str != "**here I want to check the 'str' is empty or not**")
    {
        /* handle empty string */
    }
    /* ... */
}

Solution

What about isEmpty() ?

if(str != null && !str.isEmpty())


Be sure to use the parts of && in this order, because java will not proceed to evaluate the second part if the first part of && fails, thus ensuring you will not get a null pointer exception from str.isEmpty() if str is null.

Beware, it's only available since Java SE 1.6. You have to check str.length() == 0 on previous versions.

To ignore whitespace as well:

if(str != null && !str.trim().isEmpty())


(since Java 11 str.trim().isEmpty() can be reduced to str.isBlank() which will also test for other Unicode white spaces)

Wrapped in a handy function:

public static boolean empty( final String s ) {
  // Null-safe, short-circuit evaluation.
  return s == null || s.trim().isEmpty();
}


Becomes:

if( !empty( str ) )

Code Snippets

if(str != null && !str.isEmpty())
if(str != null && !str.trim().isEmpty())
public static boolean empty( final String s ) {
  // Null-safe, short-circuit evaluation.
  return s == null || s.trim().isEmpty();
}
if( !empty( str ) )

Context

Stack Overflow Q#3598770, score: 1006

Revisions (0)

No revisions yet.