如何判断List是否为空,也就是list.isEmpty()和list.size() == 0 有何区别
来源:互联网 发布:天津流氓 知乎 编辑:程序博客网 时间:2024/05/22 14:01
一,如何判断List是否为空,也就是list.isEmpty()和list.size() == 0 有何区别?
就功能的实现来说,两者之间没有什么区别,都可以用来判断集合是否为空。
然后从效率上来说,equals方法的效率要高于StringUtils.isBlank。这一点很好理解,经过封装的isBlank的效率显然要低一些。但是一般情况下,字符串判断是否为空不会消耗太多的资源,所以我们也不用特别在意。
就功能的实现来说,两者之间没有什么区别,都可以用来判断集合是否为空。
我们来看API文档说明
/** * Returns the number of elements in this list. If this list contains * more than <tt>Integer.MAX_VALUE</tt> elements, returns * <tt>Integer.MAX_VALUE</tt>. * * @return the number of elements in this list */ int size(); /** * Returns <tt>true</tt> if this list contains no elements. * * @return <tt>true</tt> if this list contains no elements */ boolean isEmpty();
二,如何判断字符串为空?
现在有一个字符串:
String testString = "YANGCQ";我们有以下几种方法来判断:
1,equals方法
"".equals(testString);//安全的写法,推荐
testString.equals("");//不安全的写法2,StringUtils Apache工具类包中的StringUtils工具类
StringUtils.isEmpty(testString);StringUtils.isBlank(testString);
上面这2种方法,应该是我们经常使用的2种方法了。
首先从功能上来说,2种方法都是没有什么问题的,都可以实现我们想要实现的功能。然后就是StringUtil是null安全的,也就是说如果testString为null,也不会抛出NullPointerException异常。但是如果我们用equals方法,如果不注意的话,就可能会抛出NullPointerException异常。例如这种写法:testString.equals(""); 如果testString为null,显然就会出现NullPointerException异常了。
然后从效率上来说,equals方法的效率要高于StringUtils.isBlank。这一点很好理解,经过封装的isBlank的效率显然要低一些。但是一般情况下,字符串判断是否为空不会消耗太多的资源,所以我们也不用特别在意。
0 0
- 如何判断List是否为空,也就是list.isEmpty()和list.size() == 0 有何区别
- List isEmpty()和size()==0 有什么区别
- C++ STL中判断list为空,size()==0和empty()有什么区别
- C++ STL中判断list为空,size()==0和empty()有什么区别
- 项目实践学习-list!=null和list.size()>0 list.isEmpty的区别
- 如何判断一个list是否为空
- list==null 和 list.isEmpty() 的区别
- list==null和list.isEmpty()的区别
- list.isEmpty()和list.size()>0时间复杂度
- List 为空和 size为零的区别
- 判断一个list集合是否为空,用isEmpty 还是 null的问题???
- list!=null和list.size()>0的区别
- list!=null和list.size()>0的区别
- list!=null和list.size()>0的区别
- jsp中判断list为空(null或size==0)
- list!=null和list.size()>0
- 判断集合list集合是否为空:
- s:if 判断List是否为空
- 腾讯精品文!超多干货的UI界面动效设计指南
- JVM虚拟机-内存划分
- 【问题集】出现error: The following untracked working tree files would be overwritten by checkout
- Android Fragment
- 树状数组学习(转)
- 如何判断List是否为空,也就是list.isEmpty()和list.size() == 0 有何区别
- [Linux]Linux下如何查看有多少文件夹,多少子目录
- 异步调用四大方法
- 关于Android的震动器Vibrator使用一点心得
- MediaPlayerActivity playNextMusic()
- 使用富文本修改字体的风格NSMuttableAttstring
- 【HTML5】跨浏览器的HTML5占位文本(PlaceHolder)方案
- 棋盘上的麦子(BigInteger处理大数问题)
- expect set timeout -1 永不超时