java – Map.containsKey()有用吗?
发布时间:2020-12-15 02:50:00 所属栏目:Java 来源:网络整理
导读:参见英文答案 Is using java Map.containsKey() redundant when using map.get()6个 我想知道,在尝试访问它之前检查特定密钥是否有意义.例: Map myMap ....if myMap.containsKey(key) { Object value = myMap.get(key); .....} 不使用containsKey的示例: O
参见英文答案 >
Is using java Map.containsKey() redundant when using map.get()6个
我想知道,在尝试访问它之前检查特定密钥是否有意义.例: Map myMap .... if myMap.containsKey(key) { Object value = myMap.get(key); ..... } 不使用containsKey的示例: Object value = myMap.get(key); if (value != null) { ...... } 编辑:澄清空键和值.假设该映射不允许空键和空值,因此这两个示例是相同的. 解决方法
是 – 键可以具有空值:
Map myMap = ...; myMap.put("foo",null); if (myMap.containsKey("foo")) { Object value = myMap.get(key); // value is null } Object value = myMap.get("foo"); if (value != null) { // you won't get here } 您可以争辩(并且我同意),当他们第一次创建Java的集合API时,不区分空值和不存在的条目是一个非常糟糕的设计决策. (有些地图 – 至少是 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |