加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 添加到hashmap需要很长时间

发布时间:2020-12-15 00:08:39 所属栏目:Java 来源:网络整理
导读:在我的 java程序中,我已经停留了几行,这需要花费太多时间(大约20秒),这对我来说似乎很奇怪. 这是线 MapURL,Integer res2 = new HashMap(); for (URL url : res) { res2.put(url,null); } 哪个res定义如下: ListURL res = new ArrayList(); 在我的程序中,res
在我的 java程序中,我已经停留了几行,这需要花费太多时间(大约20秒),这对我来说似乎很奇怪.

这是线

Map<URL,Integer> res2 = new HashMap<>();
 for (URL url : res) {
     res2.put(url,null);
 }

哪个res定义如下:

List<URL> res = new ArrayList<>();

在我的程序中,res.size()?= 1500

你知道我的问题可能来自哪里吗?

谢谢 !

解决方法

java.net.URL的hashCode()方法执行DNS解析. URL类不适合在HashSet中使用或作为HashMap中的键使用.使用字符串或java.net.URI.

这是一些背景知识:

> Michael Scharf: java.net.URL.equals and hashCode make (blocking) Internet connections….
> Eishay Smith: Java’s URL little secret(RobAu在对此答案的评论中链接)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读