我正在写一个程序,将坐标作为输入,并概念化网格中的坐标,为此我使用的是二维数组。问题是一些坐标大于十亿,我相信二维数组的最大尺寸大约在8亿左右。我知道我可以增加分配给JVM的内存以增加最大大小;但有没有办法做到这一点,而不会超过默认的最大尺寸,或另一个X没有最大尺寸的网格系统?谢谢二维网格大于二维数组中的Java
回答
我理解你吗? (1,3)你会这样做吗?
[0][0][1][0]
[0][0][0][0]
[0][0][0][0]
[0][0][0][0]
如果您的代码需要一个具有该大小的数组来存储坐标,请重新考虑程序的工作方式。另一种使用ArrayList存储坐标的方法,或者其中每个条目都是数组中不同的占用位置的东西。这样,你只用内存来占用被占用的点,而不是那些没有被占用的点。因为如果按照您的计划进行操作,您将在网格上为每个坐标使用32位,当您知道它们大多数为0.
这种方法如何回答问题? –
@HovercraftFullOfEels我不能使用评论,因为我的代表,否则我会用这个澄清评论。 – JitterbugChew
是的,我修改了它,所以我只需要填充的坐标,我只是想知道是否有一种方法可以制作更大的2D数组,或者我可以使用另一种数据类型 –
- 1. Java二维数组
- 2. 二维数组java
- 3. 二维网格
- 4. java中的二维数组
- 5. 带网格的二维数组
- 6. 二维数组ext.net网格视图
- 7. Java - 打印二维数组
- 8. Java;二维数组长度
- 9. Java比较二维数组
- 10. 二维数组问题Java
- 11. java二维数组算术
- 12. Java编程二维数组
- 13. Java二维字符数组
- 14. Java二维数组拷贝
- 15. Java二维数组问题
- 16. Java二维数组比较
- 17. Java二维数组问题
- 18. 二维数组
- 19. 二维数组
- 20. 二维数组
- 21. 二维数组
- 22. 二维数组
- 23. Java,如何从二维二维数组中找到特定值?
- 24. 二维数组有助于使用java
- 25. 关于二维数组
- 26. 将数字从网格导入到二维数组中Java
- 27. Java中的二维数组的实际尺寸(二维数组填充区域),
- 28. 将二维数组转换为Java中的一维数组
- 29. c中的二维到一维数组
- 30. 阅读Java中的JSON二维数组
您看过[此类似的问题和答案](http ://stackoverflow.com/questions/674186/making-a-very-large-java-array)? –
为什么你的数组匹配一个索引大小到一个坐标步?你可以做一些划分,以便你的数组缩放吗?那么追踪点数呢? – matt
选项二:稀疏数组按照[这个类似的问题](http://stackoverflow.com/questions/22792097/alternatives-for-problems-involving-very-large-array-indexing-storing-very-large)。 –