java中Map判断是否为空之isEmpty()与==null的区别
- isEmpty()方法判断Map是否有内容(即new分配空间后是否put键值对),若没有内容则true,否则false
- == null是判断map是否为null(即是否new分配空间,和其中的键值对没关系),若没有内容则true,否则false
1 Map map = new HashMap<String ,String>(); 2 System.out.println("判断map是否有内容:"+map.isEmpty());//返回true 3 System.out.println("判断map是否为null:"+map==null);//返回false 4 5 Map map = new HashMap<String ,String>(); 6 map=null; 7 System.out.println("判断map是否为null:"+(map==null));//结果为true 8 System.out.println("判断map是否有内容:"+map.isEmpty());//NullPointerException 9 10 Map map = new HashMap<String ,String>(); 11 map.put(null,null); 12 System.out.println("判断map是否为null:"+(map==null));//false 13 System.out.println("判断map是否有内容:"+map.isEmpty());//false
新说明:
前言
比如:判断list是否为空,通过我们是这样判断的:
1 if(null != list && list.size() > 0){ 2 // ... 3 }
写多了,就感觉太繁琐了。然后list里面自带的有这样一个方法:
list.isEmpty()
它可以判断list是否有数据。但是如果list 是一个null,那么这个方法就会报java.lang.NullPointerException
异常。
记得之前在某篇文章看到的,推荐使用这个方法来判断:
CollectionUtils.isEmpty(list)
测试
1 public static void main(String[] args) { 2 List list1 = new ArrayList(); 3 List list2 = null; 4 System.out.println("结果1:" + CollectionUtils.isEmpty(list1)); 5 System.out.println("结果2:" + CollectionUtils.isEmpty(list2)); 6 System.out.println("结果3:" + list1.isEmpty()); 7 System.out.println("结果4:" + list2.isEmpty()); 8 }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!