gpt4 book ai didi

java - Java 中通过相关列表对列表进行排序

转载 作者:行者123 更新时间:2023-12-01 06:42:09 26 4
gpt4 key购买 nike

我有两个列表:

List<Double> nums = Arrays.asList(5.0, 0.9, 10.4);
List<Double> mappedNums = Arrays.asList(2.1, 0.3, 1.2);

我想根据 mappedNumsnums 进行排序:我希望 nums[0.9, 10.4, 5.0 ],因为0.9nums的第二个元素,而mappedNums的第二个元素是最小的,以此类推。我该怎么做?

最佳答案

虽然其他人已经成功地展示了使用流等来执行此操作的方法。我将大胆地建议问题中的前提条件是有缺陷的,并使解决方案比应有的更难(阅读和维护)。

两个列表中的值是相关的。它们应该存储在相同的数据结构中,而不是存储在两个单独的列表中。

将值合并到一个列表中,该列表包含专用类中的键值对。但是不要将它们命名为“key”或“value”或“KeyValuePair”(标准Java没有KeyValue类的原因是因为人们会立即滥用它而不考虑代码的可读性)。使用描述值含义的名称。一旦列表中包含成对对象,使用专用于该任务的比较器按任一字段对列表进行排序将变得很简单。

关于java - Java 中通过相关列表对列表进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56166015/

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