当前位置: 首页 > 面试题库 >

HashSet的最大大小

常源
2023-03-14
问题内容

所以基本上我正在生成随机的10000个IP地址,我想存储在HashSet中找到的所有那些IP地址,但是根据我的计算,发现了大约6000个IP地址,但是在HashSet中仅存储了700个IP地址?HashSet在存储String方面是否有任何限制。任何建议将不胜感激。

   Set<String> ipFine = new HashSet<String>();
        long runs = 10000;
            while(runs > 0) {

            String ipAddress = generateIPAddress();

            resp = SomeClass.getLocationByIp(ipAddress);

            if(resp.getLocation() != null) {

                 ipFine.add(ipAddress);
                        }

               runs--;

         }

问题答案:

就您而言,没有限制(限制是数组的最大大小,即2 ** 31)。

但是,Sets仅存储 唯一 值,因此我的猜测是您仅生成700个唯一地址。

修改您的代码,如下所示:

if(resp.getLocation() != null) {
    if (ipFine.add(ipAddress)) { // add() returns true if the value is unique
        runs--; // only decrement runs if it's a new value
    }
}

此修改将意味着您将一直循环播放,直到获得10000个 唯一 值为止。



 类似资料:
  • 问题内容: 什么是最大尺寸,,?我知道可以存储超过3277000个数字。 但是,列表的大小取决于内存(堆)的大小。如果达到最大值,则JDK会抛出一个。 但我不知道中的元素数量的限制,和。 问题答案: 这些结构没有指定的最大大小。 实际的实际大小限制可能在大约某个区域内(即2147483647,大约20亿个元素),因为这是Java中数组的最大大小。 A 在内部使用,因此其最大大小与 A 使用的数组的

  • 问题内容: 我想在HashSet和HashMap中找到最大的数字。假设我的HashSet中有数字[22,6763,32,42,33],我想在当前的HashSet中找到最大的数字。我该怎么做?对于HashMap也是如此。希望您能帮助我。谢谢。 问题答案: 您可以用来从任何集合中找到最大的元素。同样,对于,您可以在或上使用相同的方法,具体取决于您想要的是最大键值还是最大值。 另外,如果您愿意,可以使用

  • 问题内容: 为什么会限制其大小? 我浏览了一些链接:http : //www.coderanch.com/t/540346/java/java/maximum-size-hold- String-buffer 。 是因为count成员变量是int吗? 假设我们有2 ^ 31-1个字符,并在其中追加了一些字符。Count成员变量将增加附加的字符数,如果Count变量已经达到最大值(2 ^ 31-1)

  • 问题内容: PHP会话中可以存储的最大大小是多少? 问题答案: 您可以在会话中存储任意数量的数据。所有会话都存储在服务器上。您可以达到的唯一限制是脚本一次可以消耗的最大内存,默认情况下为128MB。

  • 这听起来可能像是JavaFX ImageView设置的最大大小的重复,但它是不同的。 我想限制ImageView的最大大小。不幸的是,设置ImageView大小的唯一方法似乎是fitWidth和fitHeight,但是如果图像小于配合值,则会放大图像。 我尝试将fitWidth/fitHeight设置为0/0,并将ImageView包装到设置了maxWidth的窗格中-没有成功(图像以原始大小显示

  • 问题内容: 我知道Java中一个方法的最大大小为64k。如果超过该限制,我们将收到一个编译器警告,例如“代码太大而无法编译”。所以我们可以称这为Java的缺点吗? 我们可以增加这个大小限制,还是真的有可能增加? 关于此方法大小还有其他想法吗? 问题答案: 以我的经验,64KB的限制只是生成代码的问题。尤其是 初始化大型数组时(通过代码完成) 在结构良好的代码中,每种方法的长度都是可管理的,并且比此