这篇文章主要介绍StringUtils和CollectionUtils判断为空的方法哪个速度更快,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
自己直接写判断效率高(一般是0ms),但是封装的简便、严谨(一般10ms以内)
函数StringUtils.isNotBlank(testString)
的功能与StringUtils.isBlank(testString)
相反
函数StringUtils.isNotEmpty(testString)
的功能与StringUtils.isEmpty(testString)
相反
如果字符串是String str = " ";//或者是str = " ";
所以如果判断为空的话 最好用
StringUtils.isBlank(str) 或者 str!=null && !"".equals(str.trim())
List list = new ArrayList();
CollectionUtils.isEmpty(list);
Map map = new HashMap();
CollectionUtils.isEmpty(map);
源码:
public static boolean isEmpty(Collection<?> collection) {
return collection == null || collection.isEmpty();
}
public static boolean isEmpty(Map<?, ?> map) {
return map == null || map.isEmpty();
}
/**
* Returns <tt>true</tt> if this list contains no elements.
*
* @return <tt>true</tt> if this list contains no elements
*/
public boolean isEmpty() {
return size == 0;
}
/**
* Returns <tt>true</tt> if this map contains no key-value mappings.
*
* @return <tt>true</tt> if this map contains no key-value mappings
*/
public boolean isEmpty() {
return size == 0;
}
针对以上方法,本人认为字符串判断是否为空用StringUtils.isBlank(str );
对集合判断还是用原生代码list != null && list.size>0
下面将为大家演示StringUtils、CollectionUtils工具类的常用方法。
作用:常用于判断集合中是否有元素、是否为空等
★★★ 例1 : 判断集合是否为空:
CollectionUtils.isEmpty(null); //控制台打印:true
CollectionUtils.isEmpty(new ArrayList());//控制台打印:true
CollectionUtils.isEmpty({a,b});//控制台打印:false
★★★ 例2: 判断集合是否不为空:
CollectionUtils.isNotEmpty(null); //控制台打印:false
CollectionUtils.isNotEmpty(new ArrayList()); //控制台打印:false
CollectionUtils.isNotEmpty({a,b}); //控制台打印:true
1.1、数据库用户实体
public class User implements Serializable {
private Long id; //用户ID
private String name; //用户姓名
private Integer age; //用户年龄
.......
}
1.2、Mapper
/**
* 小编(程序牛CodeCow)用的是注解方式写sql,也可以用XML方式写sql,看个人爱好
*/
@Select("<script> " +
"select * from User " +
"</script>")
List<User> getUserList();//获取所有用户
1.3、测试
@Autowired
private UserMapper userMapper;
List<User> list = userMapper.getUserList();//调用Mapper方法,获取所有用户
if(CollectionUtils.isEmpty(list )){ //使用CollectionUtils工具判断是否为空
//此处进行为空的业务逻辑操作
}else{
//此处进行不为空的业务逻辑操作
}
1、作用:常用于判断字符串是否为空、" "、null等
★★★ 例1:<isEmpty>判断某字符串是否为空(为空标准:字符串为null或字符串长度为0)
StringUtils.isEmpty(null); //控制台打印:true
StringUtils.isEmpty("") ; //控制台打印:true
StringUtils.isEmpty(" "); //控制台打印:false (空格在StringUtils中作非空处理)
StringUtils.isEmpty("程序牛CodeCow") //控制台打印:false
★★★ 例2:<isNotEmpty>判断某字符串是不为空(和例1相反)
StringUtils.isNotEmpty(null); //控制台打印:false
StringUtils.isNotEmpty(""); //控制台打印:false
StringUtils.isNotEmpty(" "); //控制台打印:true
StringUtils.isNotEmpty("程序牛CodeCow"); //控制台打印:true
★★★ 例3:<isBlank>判断某字符串是否为空
StringUtils.isBlank(null); //控制台打印:true
StringUtils.isBlank(""); //控制台打印: true
StringUtils.isBlank(" "); //控制台打印:true
StringUtils.isBlank("程序牛CodeCow")//控制台打印:false
★★★ 例4:<isNotBlank>判断某字符串是不为空(和例3相反)
StringUtils.isNotBlank(null);//控制台打印:false
StringUtils.isNotBlank(""); //控制台打印:false
StringUtils.isNotBlank(" "); //控制台打印:false
StringUtils.isBlank("程序牛CodeCow")//控制台打印:true
☆☆☆☆☆ isEmpty、isBlank 都是判断字符串是否为空,他两有什么区别 ???
朋友记住一点就行:isBlank 可以说更加严格,比如:
isBlank(" ") isBlank 说我TM就说它 "为空"
isEmpty(" ") isEmpty 说我TM就说它 "不为空"
"朋友你懂了吗^__^"
2.1、首先导包
//导入commons包;小编(程序牛CodeCow)用的是 lang3,推荐
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.9</version>
</dependency>
2.2、测试
1 "测试小编(程序牛CodeCow)就 不多 BB 了, 仔细看了上面的 应该都会了吧 ^__^ "
以上是“StringUtils和CollectionUtils判断为空的方法哪个速度更快”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。