java—排序多个ArrayList同时保持索引相等?

xcitsw88  于 2021-07-03  发布在  Java
关注(0)|答案(2)|浏览(368)

关闭。这个问题需要细节或清晰。它目前不接受答案。
**想改进这个问题吗?**通过编辑这个帖子来添加细节并澄清问题。

上个月关门了。
改进这个问题
在这个java程序中,我有三个ArrayList。一个是电影片名,一个是演员,最后一个是年度。我使用collections.sort允许用户按标题、参与者或年份进行排序。唯一的问题是,当我按片名排序时,年份和演员与相应的片名并不一致。如何从排序列表(标题)中获取索引顺序,并将相同的顺序应用于其他两个arrayList?谢谢

6kkfgxo0

6kkfgxo01#

@camickr的答案总结了您的解决方案,即创建具有这三个属性的对象,并自定义比较条件。
我只是想让你看看你为什么有这个问题。每个列表根据其自己的收集顺序确定。你还没有确定他们之间的关系。
下面的图片显示了什么可以自然发生给你的3个独立的收集目前的状态。

hmtdttj4

hmtdttj42#

没有多个ArrayList。
而是创建一个具有3个属性的“电影”对象:
电影片名
演员
一年。
每个属性都需要一个“getter”方法。
然后将每个“电影”的一个示例添加到单个 ArrayList .
然后你就可以把 ArrayList 使用 sort(...) 方法与自定义 Comparator .
比如:

movieList.sort(Comparator.comparing(Movie::getTitle));

相关问题