我有两个列表,其中列表 A 有一些项目,列表 B 有有序值,可用于重新排列列表 A。
列表 A = [X, A, Y, B, C, D, E, F],
列表 B = [D, B, A]
我需要得到的结果:
结果:[X、D、Y、B、C、A、E、F]。
正如您所看到的,根据列表 B 中提到的元素,列表 A 的元素已交换并排序。
我们可以使用java比较器来实现这一点吗?或者有什么最快的方法吗?
在实际场景中,
列表 A 包含 A 的对象,列表 B 包含该对象的 mongoId。
class A{
string mongoId;
string name;
//getters and setters
}
最佳答案
这不是比较器的情况。我的想法是构建一个映射,将列表 B 的值作为键,将列表 A 中的索引作为值。然后浏览该 map ,您可以在列表 A 中进行适当的切换
关于java - 使用另一个列表对一个列表进行排序。根据第二个列表交换项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56625997/