IdentityHashMap

IdentityHashMap is a special Map that implements the Map interface per se, but as a matter of fact, the implementation violates the contract of the Map interface that the documentation defines. It does it for a good reason. The implementation uses a hash table just as HashMap, but to decide the equality of the key found in the bucket comparing with the key element provided as the argument to the get method, it uses Object reference (== operator) and not the method equals(), which is required by documentation of Map interface.

The use of this implementation is reasonable when we want to distinguish different Object instances as keys that otherwise equal each other. Using this implementation for performance reasons is almost ...

Get Java Projects - Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.