java – Map. Is containskey () useful?
•
Java
See English answer > is using java map containsKey() redundant when using map. Get() 6
Map myMap ....
if myMap.containsKey(key) {
Object value = myMap.get(key);
.....
}
Examples of not using containskey:
Object value = myMap.get(key);
if (value != null) {
......
}
Edit: clarify empty keys and values Assuming that the mapping does not allow null keys and null values, the two examples are the same
Solution
Yes – the key can have a null value:
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
}
You can argue (and I agree) that when they first created Java's collection API, it was a very bad design decision not to distinguish between null values and non-existent entries
(some maps - at least hashtable and concurrenthashmap - do not allow null values, which makes containskey less important, but it still improves readability than m.get (k) = = null.)
The content of this article comes from the network collection of netizens. It is used as a learning reference. The copyright belongs to the original author.
THE END
二维码
