固定长度数组与字段

时间:2014-01-05 15:40:31

标签: java arrays performance field

什么更快? 我想编写一个用于处理和计算向量和矩阵的API。 “Matrix4f”需要4 * 4个浮点值。 我应该把它写成16个字段还是二维数组? 但如果我使用字段,继承是不可能的。

2 个答案:

答案 0 :(得分:1)

访问数组和访问变量O(1)都没有复杂性。

这不是你应该考虑的速度,而是你的实际算法和功能。

答案 1 :(得分:1)

这更像是一个可维护性而不是速度的问题。你的两种选择之间的速度差异几乎肯定不会引人注意。然而,阵列方法在你想要建模的方面更有意义,并且它更容易处理(例如,你想要创建一个5x5矩阵,那么你的数组代码将很容易重用,而你的代码有16个字段需要大幅修改)。简而言之,在做出这个决定时不要担心速度,而是担心什么更有意义,哪些更容易管理;那么选择应该是明确的。