Map的isEmpty()与==null的区别

Map的isEmpty()与==null的区别

  • isEmpty()方法判断Map是否有内容(即new分配空间后是否put键值对),若没有内容则true,否则false

  • == null是判断map是否为null(即是否new分配空间,和其中的键值对没关系),若没有内容则true,否则false

    Map map = new HashMap<String ,String>();
    System.out.println(“判断map是否有内容:”+map.isEmpty());//返回true
    System.out.println(“判断map是否为null:”+map==null);//返回false

    Map map = new HashMap<String ,String>();
    map=null;
    System.out.println(“判断map是否为null:”+(map==null));//结果为true
    System.out.println(“判断map是否有内容:”+map.isEmpty());//NullPointerException

    Map map = new HashMap<String ,String>();
    map.put(null,null);
    System.out.println(“判断map是否为null:”+(map==null));//false
    System.out.println(“判断map是否有内容:”+map.isEmpty());//false

文章来自

[https://www.cnblogs.com/zhima-hu/p/7615921.html]
/** * 验证单个Map中是否包含有效的signDate * @param map 待检查的Map * @return true表示有效,false无效 */ private boolean isValidSignDate(Map<String, Object> map) { if (map == null) { return false; } if (!map.containsKey("signDate")) { return false; } Object value = map.get("signDate"); if (value == null) { return false; } if (value instanceof String) { // 字符串类型,去除首尾空格后检查是否为空 return !((String) value).trim().isEmpty(); } else { return false; } } /** * 验证单个Map中是否包含有效的contractNum * @param map 待检查的Map * @return true表示有效,false无效 */ private boolean isValidContractNum(Map<String, Object> map) { if (map == null) { return false; } if (!map.containsKey("contractNum")) { return false; } Object value = map.get("contractNum"); if (value == null) { return false; } if (value instanceof String) { // 字符串类型,去除首尾空格后检查是否为空 return !((String) value).trim().isEmpty(); } else { return false; } } /** * 验证单个Map中是否包含有效的itemName * @param map 待检查的Map * @return true表示有效,false无效 */ private boolean isValidItemName(Map<String, Object> map) { if (map == null) { return false; } if (!map.containsKey("itemName")) { return false; } Object value = map.get("itemName"); if (value == null) { return false; } if (value instanceof String) { // 字符串类型,去除首尾空格后检查是否为空 return !((String) value).trim().isEmpty(); } else { return false; } } /** * 验证单个Map中是否包含有效的itemName * @param map 待检查的Map * @return true表示有效,false无效 */ private boolean isValidAmount(Map<String, Object> map) { if (map == null) { return false; } if (!map.containsKey("amount")) { return false; } Object value = map.get("amount"); if (value == null) { return false; } if (value instanceof String) { // 字符串类型,去除首尾空格后检查是否为空 return !((String) value).trim().isEmpty(); } else { return false; } }四个方法合成一个方法
07-27
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值