How to implement a fixed maximum size of HashMap in Java
Using the Removeeldestentry method of the Linkedhashmap, overloading this method allows the map to grow to the maximum size, and the oldest record is deleted after each new record is inserted.
ImportJava.util.LinkedHashMap;ImportJava.util.Map; Public classMaxsizehashmap<k, v>extendsLinkedhashmap<k, v> { Private Final intmaxSize; PublicMaxsizehashmap (intmaxSize) { This. maxSize =maxSize; } // //Returns True if this map should the remove its eldest entry. //This method was invoked by put and Putall after inserting a new entry into the map. //It provides the implementor with the opportunity to remove the eldest entry each time a new//One is added. This is useful if the map represents a cache://It allows the map to reduce memory consumption by deleting stale entries. //@Overrideprotected BooleanRemoveeldestentry (Map.entry<k, v>eldest) { returnSize () >maxSize; }}
How to implement a fixed maximum size of HashMap in Java