是否有一个函数可以将顺序转储到第二个列表,而不是修改第一个列表?

我正在创建一个应用程序,用于对比赛结果从最好到最差的顺序进行排序,并显示实际位置。我刚刚开始编程。

例子:

ArrayList 结果 //[8, 9, 5, 4, 7]

应该返回ArrayList位置(从低到高) //[4, 5, 2, 1, 3]


慕容3067478
浏览 83回答 1
1回答

慕仙森

只是为了对结果进行排序,请使用:Collections.sort(result, Collections.reverseOrder());但如果您需要跟踪索引,您可能需要:class ResultArray{&nbsp; &nbsp;int index;&nbsp; &nbsp;int value;&nbsp; &nbsp;public ResultArray(int i, int v){&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;index = i;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;value = v;&nbsp; &nbsp;}}List<ResultArray> nums = new ArrayList<>();&nbsp; &nbsp; for(int i = 0; i < result.size(); i++) {&nbsp; &nbsp; &nbsp; &nbsp; nums.add(new ResultArray(i, result.get(i)));&nbsp; &nbsp; }&nbsp; &nbsp; Collections.sort(nums, (a, b) -> a.y > b.y ? -1 : 1);
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java