实现固定大小的hashMap(JAVA)
JAVA 实现 大小 HashMap 固定
2023-09-27 14:25:31 时间
1、创建一个固定大小的hashMap
1 import java.util.LinkedHashMap; 2 import java.util.Map; 3 4 public class MaxSizeHashMap<K, V> extends LinkedHashMap<K, V> { 5 private final int maxSize; 6 7 public MaxSizeHashMap(int maxSize) { 8 this.maxSize = maxSize; 9 } 10 11 12 // 13 //Returns true if this map should remove its eldest entry. 14 //This method is invoked by put and putAll after inserting a new entry into the map. 15 //It provides the implementor with the opportunity to remove the eldest entry each time a new 16 //one is added. This is useful if the map represents a cache: 17 // it allows the map to reduce memory consumption by deleting stale entries. 18 // 19 @Override 20 protected boolean removeEldestEntry(Map.Entry<K, V> eldest) { 21 return size() > maxSize; 22 } 23 }
2、使用固定大小的hashMap
@Test public void testMaxSizeMap(){ MaxSizeHashMap<String,String> map = new MaxSizeHashMap<>(10); for(int i=0;i<100;i++){ map.put(""+i,""+i); } System.out.println(map.size()); //10 保留最后存入map的10个数据 }
参考地址
https://www.cnblogs.com/scottgu/p/4118428.html
https://blog.csdn.net/ClementAD/article/details/50596178
相关文章
- java实现,二叉搜索树(过程非常详细)
- Java 线程的虚假唤醒
- 阿里Java编码手册实战详解-集合处理篇
- Java开发操作系统内核:实现进程的优先级切换
- 基于JAVA的学生管理系统的设计与实现(论文+源码)_kaic
- java算法实现树型目录反向生成(在指定的盘符或位置生成相应的文件结构)
- 重新精读《Java 编程思想》系列之组合与继承
- 基于Tire树和最大概率法的中文分词功能的Java实现
- Java:SpringBoot @Async实现异步任务
- 为什么java内部类访问局部变量必须声明为final?
- 【RabbitMQ】 Java简单的实现RabbitMQ
- [五]类加载机制双亲委派机制 底层代码实现原理 源码分析 java类加载双亲委派机制是如何实现的
- java native方法与JNI实现
- java常用类介绍及源码阅读(ArrayList)
- java从图片中识别文字
- Java IO(2) 字节流 FileInputStream和FileOutputStream实现文件拷贝
- Java使用Jetty实现嵌入式Web服务器及Servlet容器
- 查找附近网点geohash算法及实现 (Java版本号)
- 第三十一章:Java编程实战-做个博客系统(2)
- 用十种编程语言开发计算器应用-第二篇-Java语言
- Java 8系列之重新认识HashMap
- android - android Couldn't load runtimecore_java from loader
- 大数据必学Java基础(六十):集合补充
- 用CountDownLatch来同步java的多线程
- HTTP POST请求报文格式分析与Java实现文件上传
- Java语言实现简单FTP软件------>FTP软件本地窗口的实现(五)