按相同标准对两个int []进行排序

Chr*_*rry 0 java arrays sorting

我有两个int [],Start和End.它们引用一系列行:Start [0]是第0行的起始位置,End [0]是第0行的结束位置.我想按升序对Start进行排序,然后以相同的方式对End进行排序,所以阵列保持对齐.

在MatLab中,您可以这样做:

[idx,StartSorted] = sort(Start); EndSorted =结束(idx);

在Java中执行相同操作的最佳方法是什么?写一个元组课,还是有更好的方法?

一般来说,操作这样的配对数据的最佳方法是什么?

亲爱的


谢谢你们,这太好了.

JB *_*zet 5

不要使用两个数组int.使用单个数组Line,其中Line是具有start属性和end属性的类.

然后,按照它们的开始对行进行排序(在Java 8中):

Arrays.sort(lines, Comparator.comparingInt(Line::getStart));
Run Code Online (Sandbox Code Playgroud)