对数组进行排序并反映另一个数组中的更改

Raz*_*van 7 java arrays sorting

我在Java中有一系列双打:arr1我想要排序.最可能的第一种选择是实用方法Arrays.sort(double[]).

这个想法是,我想同样的变化(在例如值index i在与值互换index jarr1),以反映在另一个整数数组:arr2(即在相同的索引值也发生变化,在读出arr2).

有没有一种简单的方法(一招)在Java中实现这一目标?或者唯一的方法是自己实现排序算法?

更新:我看到人们建议用一个包含2个值的对象数组替换两个数组(一个来自arr1,一个来自arr2).这不会带来一些效率惩罚.换句话说,排序对象数组的效率是否低于基本类型数组(在这种情况下是双打的)?

数据完全是静态的.它很大(它适合内存)但是静态.

Bil*_*ard 7

更简洁的解决方案是创建一个封装两个数据值的类,而不是尝试维护已排序的并行数组,而只需要一个对象数组.

(但是要回答你的问题,在Java中没有内置的方法来实现这一点.实现你自己的排序例程,保持两个数组根据其中一个数据的值进行排序,这对于少量数据不太可能改变,但很难维持.)