You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
31 lines
880 B
31 lines
880 B
public class Pair<K, V> {
|
|
private K key;
|
|
private V value;
|
|
|
|
public Pair(K key, V value) {
|
|
this.key = key;
|
|
this.value = value;
|
|
}
|
|
|
|
public K getKey() { return key; }
|
|
public V getValue() { return value; }
|
|
|
|
// swap:交换后原key变value,原value变key,返回新Pair
|
|
public Pair<V, K> swap() {
|
|
return new Pair<>(value, key);
|
|
}
|
|
}
|
|
|
|
|
|
import java.util.concurrent.ConcurrentHashMap;
|
|
|
|
public class Cache<K, V> {
|
|
private final ConcurrentHashMap<K, V> cache = new ConcurrentHashMap<>();
|
|
|
|
public void put(K key, V value) { cache.put(key, value); }
|
|
public V get(K key) { return cache.get(key); }
|
|
public V remove(K key) { return cache.remove(key); }
|
|
public void clear() { cache.clear(); }
|
|
public int size() { return cache.size(); }
|
|
public boolean containsKey(K key) { return cache.containsKey(key); }
|
|
}
|