/**
*
*/
package cn.article.utils;
/**
* Title: ExpireMap
* @version V1.0
* Description: 设置map过期时间
*/
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
/**
*
* @Description: 带有效期map
* @param <K>
* @param <V>
*/
public class ExpiryMap<K, V> extends HashMap<K, V> {
private static final long serialVersionUID = 1L;
/**
* 过期时间设置为3分钟,可以修改
*/
private long EXPIRY = 1000 * 60 * 3;
private HashMap<K, Long> expiryMap = new HashMap<>();
public ExpiryMap() {
super();
}
public ExpiryMap(long defaultExpiryTime) {
this(1 << 4, defaultExpiryTime);
}
public ExpiryMap(int initialCapacity, long defaultExpiryTime) {
super(initialCapacity);
this.EXPIRY = defaultExpiryTime;
}
public V put(K key, V value) {
expiryMap.put(key, System.currentTimeMillis() + EXPIRY);
创建带过期时间的map
最新推荐文章于 2024-08-09 04:16:23 发布
本文介绍了一个名为ExpiryMap的类,该类继承自HashMap并增加了过期时间功能。ExpiryMap中包含一个内部HashMap用于存储过期时间,提供了put、containsKey、get等方法来检查和处理过期的键值对。默认过期时间为3分钟,可以通过构造函数自定义。示例代码展示了如何使用ExpiryMap并进行操作。
摘要由CSDN通过智能技术生成