Алтай
Java 239. Что такое LinkedHashMap?
LinkedHashMap - это реализация интерфейса Map в Java, которая расширяет функциональность HashMap. Похоже на HashMap, но поддерживает порядок вставки элементов, что означает, что элементы хранятся в том же порядке, в котором были добавлены в карту. Она использует двусвязный список для хранения элементов и хеш-таблицу для быстрого доступа к ним. Ключи должны быть уникальными и могут быть любого типа (кроме null). Эта реализация не является потокобезопасной. LinkedHashMap бывает двух видов - с сохранением порядка вставки и с сохранением порядка доступа...
Java 904. Как, используя LinkedHashMap, сделать кэш c «invalidation policy»?
Для создания кэша с политикой "invalidation" (сброса) на основе LinkedHashMap вам потребуется создать пользовательский класс, расширяющий LinkedHashMap и переопределить метод removeEldestEntry(). Вот пример реализации такого класса: import java.util.LinkedHashMap;
import java.util.Map;
public class InvalidationCache<K, V> extends LinkedHashMap<K, V> {
private final int maxSize;
public InvalidationCache(int maxSize) {
this.maxSize = maxSize;
}
@Override protected boolean removeEldestEntry(Map...