LinkedHashMap#removeEldestEntry 的 Map.Entry 参数有什么意义?
What is the point of the Map.Entry parameter to LinkedHashMap#removeEldestEntry?
documentation 使用以下示例描述了此方法:
private static final int MAX_ENTRIES = 100;
protected boolean removeEldestEntry(Map.Entry eldest) {
return size() > MAX_ENTRIES;
}
在此示例中,该方法未使用参数 eldest
。 LinkedHashMap#removeEldestEntry
这个参数有什么意义?
您引用的代码只是一个如何覆盖该方法的示例。
实际执行是:
protected boolean removeEldestEntry(Map.Entry<K,V> eldest) {
return false;
}
它意味着被覆盖,一些实现可以检查最老的条目来决定是否应该删除它。
documentation 使用以下示例描述了此方法:
private static final int MAX_ENTRIES = 100;
protected boolean removeEldestEntry(Map.Entry eldest) {
return size() > MAX_ENTRIES;
}
在此示例中,该方法未使用参数 eldest
。 LinkedHashMap#removeEldestEntry
这个参数有什么意义?
您引用的代码只是一个如何覆盖该方法的示例。 实际执行是:
protected boolean removeEldestEntry(Map.Entry<K,V> eldest) {
return false;
}
它意味着被覆盖,一些实现可以检查最老的条目来决定是否应该删除它。