allora un piccolo trucchetto, se tu devi comunque reperire i due oggetti e confrontartli, non fare containsKey, ma direttamente

codice:
Object obj = mappa.get(key); 

if (obj == null) {
// elemento non contenuto
}
in questo modo hai evitato di ciclare 2 volte sul set di chiavi, la prima volta per sapere se hai la chiave, la seconda per prelevarla.

Diciamo che alla fine è una piccola ottimizzazione, che su tabelle grandi e ripetuta tante volte ti porta ad avere un piccolo miglioramento delle prestazioni (pena un confronto a null ma credimi in quelle condizioni meglio quello che un doppio ciclo)