7
如何縮小LinkedHashMap
?我忽略了removeEldestEntry
方法,但只有在插入新值時纔會調用此方法。所以這種方式使地圖變小沒有變化。收縮Java中的LinkedHashMap
的LinkedHashMap
只給我一個正常的Iterator
,並沒有任何removeLast
或listIterator
方法,那麼如何找到最後,說1000,條目並刪除它們?
我能想到的唯一方法就是遍歷整個事物。但是,可以採取年齡...
創建一個新的地圖我想刪除只有幾個元素也將破壞內存每次。
也許除去Iterator
的第一值,然後重新插入它們,當maxSize
在removeEldestEntry
方法降低。然後重新插入將踢出最古老的值。這是非常醜陋的代碼...任何更好的想法?
編輯:Sry基因迭代順序是最早到最小。所以很容易