[Java]list集合为空或为null的区别
判断的是list这个集合的问题,当前需要判断list内值的问题。
简述
判断一个list集合是否为空,我们的惯性思维是判断list是否等于null即可,但是在Java中,list集合为空还是为null,这是两码事。
引用
举个形象的例子,我有一个空着的水杯(list),而你没有,那你是null,我的size为0。你想装水就需要自己去买个水杯(new ArrayList();),但是我就可以直接装水(list.add(水))。你要是没有杯子直接倒水,水就流出去啦(空指针异常)。
判断
那么,我们什么时候用null,什么时候用isEmpty()或list.size()呢?
空集合
isEmpty() 或者(list.size() == 0)用于判断List内容是否为空,即表里一个元素也没有, 但是使用isEmpty()和size()的前提是,list是一个空集合,而不是null,所以为了避免异常,建议在使用或赋值list集合之前,做一次空集合创建处理,进行内存空间分配,即:
List list2 = new ArrayList()
1
list.isEmpty()和list.size()==0 没有区别, isEmpty()判断有没有元素,而size()返回有几个元素,如果判断一个集合有无元素,建议用isEmpty()方法. 这清晰,简明
null判断
list等于null,可理解为没有对list集合分配内存空间,实际上压根就不存在。
建议
所以,两者之间的区别,你懂了吧?
建议在编码时,采用:
if(list != null && !list.isEmpty()){
这个里面取list中的值
}else{
做其他处理
}
---------------------
作者:光阴迷客
来源:CSDN
原文:https://blog.csdn.net/changqing5818/article/details/52373569
版权声明:本文为博主原创文章,转载请附上博文链接!
---------------------------------------------------------------------------
转自https://www.cnblogs.com/yuanchaoyong/p/6247896.html
1、如果想判断list是否为空,可以这么判断:
if(null == list || list.size() ==0 ){
//为空的情况
}else{
//不为空的情况
}
2、list.isEmpty() 和 list.size()==0 有啥区别呢
答案:没有区别 。isEmpty()判断有没有元素,而size()返回有几个元素, 如果判断一个集合有无元素 建议用isEmpty()方法.比较符合逻辑用法。
3、list!=null 跟 ! list.isEmpty()有什么区别?
这就相当与,你要要到商店买东西list!=null 首先判断是否有商店 !list.isEmpty() 没有判断商店是否存在,而是判断商店是否有东西 总结用法:如果连商店都没有,何来的的东西可卖 所以一般的判断是 if(list!=null && !list.isEmpty()){//不为空的情况 }else{//为空的情况 }
转载于:https://www.cnblogs.com/hawk-li/p/10756715.html
[Java]list集合为空或为null的区别相关推荐
- 在Java开发中,判断list集合为空还是为null的区别
在Java开发中,判断list集合为空还是为null的区别 案例测试1 为什么输出not null,是因为null判断的是否对List集合分配内存空间,为不是List集合里面内容是否为空 案例测试2 ...
- Java基础学习总结(127)——Java方法应该返回空对象还是null
Java方法应该返回空对象还是null? 大多数情况下就是在需要返回值的方法中,使用空对象(empty object)来代替返回null.理由很简单,空对象与其他有意义的对象一样,使得调用方法的用户不 ...
- 集合判断是否为空isEmpty()与==null的区别
前言 Java中的空指针异常确实是令人头疼的问题,今天抽空详细梳理下关于集合判断是否为空isEmpty()与==null的区别,尽量避免触发空指针异常. 集合之List isEmpty() 测试代码如 ...
- java中集合判空_Java中的类型安全的空集合
java中集合判空 我以前曾在Java Collections类的实用程序上进行过博客撰写,并且特别地在使用Usings Collections Methods上的博客emptyList(),empt ...
- java判断集合为空_Java中判断集合类为空的方法
*****需要引入Spring的核心Jar包***** 工具类: org.springframework.util.CollectionUtils 方法: public static boolean ...
- JAVA空字符串和Null的区别浅析
空字符串:String str1 = " "; 空字符串:是一个长度为0且占内存的空字符串,在内存中分配一个空间,可以使用Object对象中的方法.例如to String( )方法 ...
- java判断集合为空工具_java中怎么判断集合是否为空
java中怎么判断集合是否为空 发布时间:2020-06-25 15:43:36 来源:亿速云 阅读:103 作者:Leah 这篇文章将为大家详细讲解有关java中判断集合是否为空的方法,文章内容质量 ...
- Java 空字符串和null的区别【实践】
1.空字符串 ""是一个空字符串,长度为0且占内存的,可以使用Object对象中的方法.如"".toString(). new String() 创建一个字符串 ...
- 1.13 空字符串和null的区别
"" ""是一个长度为 0 且占内存的空字符串,在内存中分配一个空间,可以使用 Object 对象中的方法.例如:"".toString() ...
最新文章
- 逻辑回归算法c语言_逻辑回归算法背后的数学
- python从1到n出现了多少个1-【算法21】从1到n的正数中1的出现次数
- UVa307 - Sticks(DFS+剪枝)
- servlet解决javascript传来中文乱码问题
- C++实现bellman ford贝尔曼-福特算法(最短路径)(附完整源码)
- Java推断文本文件编码格式以及读取
- 华为NP课程笔记28-IEEP课件摘录
- flash mx拖拽实例_Flash MX 2004片段面板预览
- eclipse JRebel破解
- 十大重要IT公司排名 -2009
- 全球前沿技术趋势报告;华为发布Mate 40/Pro 系列新机;Windows 计算器移植到到 Linux...
- BZOJ 1717: [Usaco2006 Dec]Milk Patterns 产奶的模式
- Create an undirected graph from the adjacency list
- 论OIer谈恋爱的必要性
- NLP入门:pyltp的介绍与使用
- 2021辽宁省大学生程序设计竞赛 C D E F G I L
- ZOJ1516 Uncle Tom's Inherited Land(二分图最大匹配)
- 华工高级语言c 平时作业,华工高级语言程序设计平时作业
- Springboot+JWT+SpringSecurity+Vue+Redis 前后端分离登录(1后端)
- 多行显示和单行显示溢出部分为...
热门文章
- Java网络爬虫实操(3)
- JS组件系列——封装自己的JS组件,你也可以
- vscode使用-添加格式化插件
- 《Flink官方文档》示例总览
- EntityFramework Core 1.1是如何创建DbContext实例的呢?
- I/O多路复用——select
- 实习小白::(转) Cocos2d-x 3.0开发(十三)使用CocoStudio编辑帧事件并关联到程序...
- php wordpress 开源,PHP 遭弃用!WordPress.com 开源并转用 Javascript
- Ubuntu下安装Python开发的Facebook Faiss相似性搜索工具
- Leetcode 703. 数据流中的第K大元素 解题思路及C++实现