前提:最近在做一个社区管理项目,需要excel导入人口信息。
问题:如果信息一个人的信息不存在则新增,已存在的合并修改。这里我用身份证号做唯一判断!
详细:我是把所有人的信息存入到一个Map,key:身份证号,value:这个人的所有信息。 我查出原有的所有信息也类似的放入originalMap中,excel导入的信息存入 importMap中,然后获得importMap的所有键进行迭代,用originalMap的containKey方法判断。
结论:Map的containKey(“key”) 方法判断的是 --------Map中是否有和该key对应的value值!!!
总结:java 原始api 如下
英文版:
boolean | containsKey(Object key) Returns true if this map contains a mapping for the specified key. |
翻译过来的:
boolean | containsKey(Object key) 如果此映射包含指定键的映射关系,则返回 true。 |
我以前以为 containKey是判断 Map中是否包含 该key ,实则是判断是否有该key对应的value。
纠正一下:containKey方法应该是判断Map里是否有该key对应的 key-value对应关系。
因为map本身就是以key-value存在的,有key必然有value,没key又何来的value,有点饶了~