gpt4 book ai didi

java - 为什么 java 从具有大尺寸数字的第一个维度开始初始化二维数组需要很长时间?

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:58:04 26 4
gpt4 key购买 nike

我注意到像这样初始化二维数组

案例 1:-

int ar [] [] = new int [10000001][10] ;

比这样初始化要花更多的时间

案例 2:-

int ar[] [] = new int [10] [10000001] ;

在情况 1 中,它花费了大约 4000 毫秒,但在情况 2 中,它不超过 100 毫秒为什么会有这么大的差距?

最佳答案

严格来说,Java 没有二维数组:相反,它使用排列成数组的一维数组的一维数组。

在您的第一种情况下,除了单个数组数组之外,Java 还制作了 10000001 个包含 10 个元素的数组,而在第二种情况下,它制作了 10 个包含 10000001 个元素的数组。

由于对象的数量相差百万分之一,第一种情况明显较慢。

关于java - 为什么 java 从具有大尺寸数字的第一个维度开始初始化二维数组需要很长时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43471708/

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