java判断空的实现方法
作者:lib_w
字符串判断空有两种情况:一个是分配了内存但值为空(""),另一个是未分配内存(null),判断方法包括isEmpty()和isBlank(),其中isBlank()还可以过滤空格、制表符,对于列表,判断不为空可以使用list!=null && !list.isEmpty()或list!=null && list.size()>0
字符串判空
字符串为空分为两种情况
1)“”:表示分配了内存空间,值为空字符串,有值。
2)null:未分配内存空间,无值,值不存在。
为空的标准为:str == null 或 str.length()==0
1.判断为空
isEmpty()方法,判断是否为空,是否为空字符串(在String为null时,会出现空指针错误,isEmpty()方法底层是判断长度)isBlank()方法,是判断字符串是否为空,空格、制表符、tab。
public static boolean isEmpty(CharSequence cs) { return cs == null || cs.length() == 0; } public static boolean isBlank(CharSequence cs) { int strLen; if (cs != null && (strLen = cs.length()) != 0) { //判断是否为空格、制表符、tab for(int i = 0; i < strLen; ++i) { if (!Character.isWhitespace(cs.charAt(i))) { return false; } } return true; } else { return true; } }
2.判断不为空
isNotEmpty()、isNotBlank()
推荐使用lang3下的StringUtiles工具类中
StringUtils.isBlank()和StringUtils.isNotBlank(),它会过滤空格。
List判空
1.判断list不为空
- 方法1:list != null && !list.isEmpty()
- 方法2:list != null && list.size() > 0
注:
- list!=null:判断是否存在list,null表示这个list不指向任何的东西,如果为空时调用它的方法,那么就会出现空指针异常。
- list.isEmpty():判断list里是否有元素存在
- list.size():判断list里有几个元素
所以判断list里是否有元素的最佳的方法是:
if(list != null && !list.isEmpty()){ //list存在且里面有元素 }
2.判断list为空
- 方法1:list == null || list.size() == 0
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。