如何判断一个String字符串不为空

时间:2020-12-30 21:02:29

很多情况下,后台会校验前端传过来的字符串是否为空,本人也看了很多初学者的代码,逻辑都不是很严谨,有很多种情况:

String str = " ";
//第一种错误情况
if (!"".equals(str) || str != null) {
    
}

//第二种错误情况
if (str != null || !"".equals(str)) {
    
}

//第三种错误情况
if (str != null || str.length() != 0) {
    
}

很多人都出现了上面3种情况的一种

第一种错误是最低级的,如果str = null,那么程序将会报空指针

第二种和第三种情况虽然不会报错,但是无法做到准确校验空字符串,如果字符串本身就是一串空格,将不会被拦截到


比较成熟的写法如下:

if (str != null || !"".equals(str.trim())) {
     //则字符串不为空或空格
}