gpt4 book ai didi

java - 如何在 Java 数组中存储 1 亿个整数?

转载 作者:IT王子 更新时间:2023-10-28 23:37:39 26 4
gpt4 key购买 nike

我正在做一个小任务,我需要在一个数组中存储大约 10 亿个整数。但是,我遇到了堆空间问题。你能帮我解决这个问题吗?

机器详情:Core 2 Duo 处理器,4 GB RAM。我什至尝试过 -Xmx 3072m 。有什么解决方法吗?同样的事情在 C++ 中也有效,所以肯定有办法在内存中存储这么多数字。

下面是我得到的代码和异常:

public class test {
private static int C[] = new int[10000*10000];

public static void main(String[] args) {
System.out.println(java.lang.Runtime.getRuntime().maxMemory());

}

}

异常(exception):线程“主”java.lang.OutOfMemoryError 中的异常:Java 堆空间 在测试中。(test.java:3)

最佳答案

使用关联数组。键是整数,值是计数(整数被添加到列表中的次数)。

如果分布相对随机,这应该可以为您节省一些可观的空间,如果不是,则更是如此。

关于java - 如何在 Java 数组中存储 1 亿个整数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14666468/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com