关闭。这个问题需要细节或清晰。它目前不接受答案。**想改进这个问题吗?**通过编辑这个帖子来添加细节并澄清问题。
上个月关门了。改进这个问题在这个java程序中,我有三个ArrayList。一个是电影片名,一个是演员,最后一个是年度。我使用collections.sort允许用户按标题、参与者或年份进行排序。唯一的问题是,当我按片名排序时,年份和演员与相应的片名并不一致。如何从排序列表(标题)中获取索引顺序,并将相同的顺序应用于其他两个arrayList?谢谢
6kkfgxo01#
@camickr的答案总结了您的解决方案,即创建具有这三个属性的对象,并自定义比较条件。我只是想让你看看你为什么有这个问题。每个列表根据其自己的收集顺序确定。你还没有确定他们之间的关系。下面的图片显示了什么可以自然发生给你的3个独立的收集目前的状态。
hmtdttj42#
没有多个ArrayList。而是创建一个具有3个属性的“电影”对象:电影片名演员一年。每个属性都需要一个“getter”方法。然后将每个“电影”的一个示例添加到单个 ArrayList .然后你就可以把 ArrayList 使用 sort(...) 方法与自定义 Comparator .比如:
ArrayList
sort(...)
Comparator
movieList.sort(Comparator.comparing(Movie::getTitle));
2条答案
按热度按时间6kkfgxo01#
@camickr的答案总结了您的解决方案,即创建具有这三个属性的对象,并自定义比较条件。
我只是想让你看看你为什么有这个问题。每个列表根据其自己的收集顺序确定。你还没有确定他们之间的关系。
下面的图片显示了什么可以自然发生给你的3个独立的收集目前的状态。
hmtdttj42#
没有多个ArrayList。
而是创建一个具有3个属性的“电影”对象:
电影片名
演员
一年。
每个属性都需要一个“getter”方法。
然后将每个“电影”的一个示例添加到单个
ArrayList
.然后你就可以把
ArrayList
使用sort(...)
方法与自定义Comparator
.比如: