编写concurrenthashmap实现本地缓存的代码
时间: 2023-08-01 11:07:25 浏览: 52
好的,以下是一个简单的示例代码,演示如何使用ConcurrentHashMap实现本地缓存:
```java
import java.util.concurrent.ConcurrentHashMap;
public class LocalCache<K, V> {
private final ConcurrentHashMap<K, V> cache;
public LocalCache() {
cache = new ConcurrentHashMap<>();
}
public void put(K key, V value) {
cache.put(key, value);
}
public V get(K key) {
return cache.get(key);
}
public void remove(K key) {
cache.remove(key);
}
public int size() {
return cache.size();
}
public boolean containsKey(K key) {
return cache.containsKey(key);
}
}
```
上述代码中,我们创建了一个LocalCache类,使用ConcurrentHashMap作为内部缓存。我们提供了put、get、remove、size和containsKey等方法,可以方便地对缓存进行操作。
需要注意的是,ConcurrentHashMap是线程安全的,因此我们不需要在方法中使用synchronized关键字来保证线程安全。同时,ConcurrentHashMap的性能也非常高,在高并发情况下能够保证较好的性能。