我有多个相同大小的列表,需要按所有其他列表对其中一个列表进行排序。可以传入的列表数量没有限制,并且它们的顺序很重要。此外,用户可能希望对列表进行升序或降序排序。例如,有人可能希望首先按年龄降序对人员列表进行排序,如果他们的年龄相同,则按名字升序排序。
List people = List.of("John Doe", "Jane Doe", "Abe Smith")
List ages = List.of(20, 25, 20)
List firstNames = List.of("John", "Jane", "Abe")
sort(people, ages, "desc", firstNames, "asc")
Result: ["Jane Doe", "Abe Smith", "John Doe"]
编辑:用户可以按他们想要的任何其他列表对他们想要的任何列表进行排序,只要它们的大小相同。不仅仅是人。这只是他们可能想要排序的数据类型的一个示例。
最佳答案
- 创建一个通用函数 f(people, list1, desc, list2, asc ....)
- 以 hashMap 对象存储,people 作为键和值 list1、list2 并创建 myComprator 类并按值排序。
关于java - Java 中通过多个其他列表对列表进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57079481/