我想要一个有限大小的地图和一些重复的键。当达到大小时,我想删除最旧的条目。
例如,这个数据集:
MAX_SIZE=5;
map.put(100,"OLDEST");
map.put(101,"XXXX");
map.put(101,"YYYY");
map.put(102,"ZZZZ");
map.put(103,"GGGG");
然后我想在地图中插入一个新条目
myLength = map.size()
if(myLength>=MAX_SIZE){
map.remove(the OLDEST)
}
map.put(105,"NEW")
我在考虑guava multimap,但是如何删除multimap中最旧的条目?
他们的KEY很长,也许我需要做一个? (效率不高)
oldest=MAX_LONG
for(Long key:map){
if(key<oldest){
oldest=key
}
}
map.remove(oldest)