Home > Java > javaTutorial > How to Reliably Check for Non-Null and Non-Empty Strings in Java?

How to Reliably Check for Non-Null and Non-Empty Strings in Java?

Susan Sarandon
Release: 2025-01-04 03:02:42
Original
677 people have browsed it

How to Reliably Check for Non-Null and Non-Empty Strings in Java?

Assessing Non-Null and Non-Empty Strings

In programming, ensuring the validity of string inputs is crucial. A common task involves verifying whether a string is neither null nor empty. Let's explore various approaches to handle this scenario.

Considering the code snippet provided:

public void doStuff(String str)
{
    if (str != null && str != "")
    {
        /* handle empty string */
    }
    /* ... */
}
Copy after login

While this seems intuitive, it introduces a potential error if str is null. In Java, comparing a string to an empty string using == evaluates to false if str is null. This can lead to an unintended null pointer exception when checking the emptiness of str.

Using isEmpty() Method

A safer approach involves utilizing Java's isEmpty() method available since Java SE 1.6:

if(str != null && !str.isEmpty())
Copy after login

This expression ensures that str is not null and has at least one non-whitespace character. Using the && operator, it short-circuits the evaluation, avoiding a null pointer exception if str is null.

Considering Whitespace

If it's necessary to check for strings that do not contain any whitespace characters, the trim() method can be employed:

if(str != null && !str.trim().isEmpty())
Copy after login

This expression removes leading and trailing whitespace characters and then checks for emptiness. Alternatively, Java 11 introduces the isBlank() method, which accomplishes the same functionality:

if(str != null && !str.isBlank())
Copy after login

Concise Function Approach

For a concise solution, a utility function can be defined:

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

This function can be utilized as follows:

if( !empty( str ) )
Copy after login

By employing these methods, developers can effectively ascertain whether a string is not null and contains non-whitespace characters, enhancing the robustness and accuracy of their code.

The above is the detailed content of How to Reliably Check for Non-Null and Non-Empty Strings in Java?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template