Check whether a string is not null and not empty

后端 未结 30 2107
予麋鹿
予麋鹿 2020-11-22 02:13

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          


        
30条回答
  •  伪装坚强ぢ
    2020-11-22 02:53

    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 ) )
    

提交回复
热议问题