Ответ 1
containsKey()
работает быстрее. keySet()
возвращает набор, поддерживаемый самим HashMap, и его метод contains()
вызывает containsKey()
.
Это его реализация:
public final boolean contains(Object o) { return containsKey(o); }
Есть ли разница между этими двумя операторами, когда я просто хочу установить оператор "if"?
// it is a HashMap
if (map.keySet().contains(myKey)) { //do something...}
if (map.containsKey(myKey)){ //do the same thing...}
containsKey()
работает быстрее. keySet()
возвращает набор, поддерживаемый самим HashMap, и его метод contains()
вызывает containsKey()
.
Это его реализация:
public final boolean contains(Object o) { return containsKey(o); }