我正在使用Java。我有两个列表,我们称他们为A和B,我想分类。 A是一个整数列表,所以我没有问题要这样做。我只是使用Collections.sort()
来获得排序的整数列表。 问题出现在列表B中。我想使与之前在A.中所做的相同更改。 B是一个对象列表,但是没有办法将B中的变化与A中的变化相关联。我的意思是,没有条件创建比较器方法。排序两个列表
小例子:
我:
A -> {5,1,3,6,4}
B -> {a,b,c,d,e}
我想排序并应用相同的更改到B获得:
A -> {1,3,4,5,6}
B -> {b,c,e,a,d}
有没有办法做到这一点使用内置的Java函数?由于效率的原因,我宁愿避免自己编写排序算法。 谢谢!
为什么他们在单独的数据结构?如果按键排序,看起来像一个“TreeMap”会更好地为您服务。 – 2014-08-28 15:10:13
你为什么不使用地图并将它们存储为一对? – Adi 2014-08-28 15:10:19
无论何时您试图将相同的变异应用于多个数据结构,您都有自己的设计气味。与所有其他评论所说的一样,创建一个数据结构,其中包含您需要的所有数据元素并创建它们的单个列表。的 – azurefrog 2014-08-28 15:12:33