gpt4 book ai didi

biginteger - 这里 : Arrays. copyOfRange() 还是普通循环更合适?

转载 作者:行者123 更新时间:2023-12-01 14:20:29 25 4
gpt4 key购买 nike

第 331 行 ( openjdk's MutableBigInteger source ) 定义了函数 toIntArray()。一般来说,MutableBigInteger 是一个数组,例如 {0, 0, 0, 0x12345678, ..., 0xffffffff, 0, 0, 0},带有变量 offset 和 intLen 定义非零值(数组的实际负载)的开始和结束位置。因此,该函数如下所示:

int[] result = new int[intLen];
for(int i=0; i<intLen; i++)
result[i] = value[offset+i];
return result;

由于包已经导入了Arrays实用程序类,用Arrays.copyOfRange(value, offset, intLen)替换所有for循环不是更好(更快?规范吗?) ;

一般来说,我的问题是关于所有相关情况:在处理此类情况时使用库方法是否更好,或者没有实际差异并且会产生几乎相同效率的可执行文件?

最佳答案

我不会对 openjdk 的实现争论不休,直到我花了一些时间分析并弄清楚他们为什么会做出这样的决定(他们可能是错的,但我的快速判断更有可能是错误的)。

但是,作为一项规则,使用已建立的库几乎总是比您自己的自制实现更好。

关于biginteger - 这里 : Arrays. copyOfRange() 还是普通循环更合适?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17622601/

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