构造一个存放50万左右数据的hashmap,请问该设置多大的size? 构造一个存放50万左右数据的hashmap,请问该设置多大的size? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 java中的内存泄露往往跟HashMap有关,lz放那么多的数据,有点不太理智 构造一个HashMap,直接往里面put数据。不需要你管它的size多大。 要看你怎么放了,内存泄漏和hashmap没有关系,和编程有关系 HashMap 的内部存储结构比较复杂,占用的内存也很多。存放50万条数据,那还要看每条数据有多少,如果是 50 万个 Integer 那肯定是没有问题的,如果是很多的字符串,你只能增大 JVM 的内存了。 ls几位的看看下面的文章:http://www.ibm.com/developerworks/cn/java/j-jtp11225/ 如果Hash冲突不多的话 建议初始容量设置为60W左右,加载因子设置为0.5如果Hash冲突过多 初始容量设置为85W左右,加载因子设置为0.75ps:50W数据量真的不是很大 根据hash的规则,你要设计好你的hashCode方法。至于速度,每个都是单独的hashCode 速度最快,但最耗内存。如果你的内存大,且这个数据对系统非常关键,建议你把这50万的数据划分到至少1000个单元去,每个单元500个数据 放一些简单的字符串键值对应该没有问题,我看LZ应该是想将数据存放在内存中提高处理速度.如果你不是用你自己的PC而是服务器可以的啦. enter事件 以下代码纯粹分享,求五子棋代码 JADE,如何在servlet中给agent传送信息 新手学java,请教一个简单的问题 求用java绘制表盘程序 编程思想上的一段代码,执行时总是出现异常?路过的帮忙看一下 (出学者)怎么离线安装JDK1.4.2?用不用安装jre? 这段数中的代码不是我那搞错了,不能运行!《面向对象程序设计-图形应用实例》 java中如何实现对word的操作 看看如下代码,为什么加载jpeg文件不行,改成gif文件就可以 同一库b表内容修改a表也作相应修改如何实现 unix系统中生成100万个静态html文件用于访问,请问存放效率最高?
如果是很多的字符串,你只能增大 JVM 的内存了。
http://www.ibm.com/developerworks/cn/java/j-jtp11225/
如果你的内存大,且这个数据对系统非常关键,建议你把这50万的数据划分到至少1000个单元去,每个单元500个数据
如果你不是用你自己的PC而是服务器可以的啦.