如何对对象数组的特定元素进行排序

时间:2016-02-25 05:19:16

标签: java compareto arrayobject

new Flight("Philadelphia", "Las Vegas", "Southwest", new GregorianCalendar(2007, 1, 12, 5, 0, 0),new GregorianCalendar(2007, 1, 12, 10, 0, 0))


new Flight("Trenton", "Blacksburg", "Trans-National Air", new GregorianCalendar(2007, 7, 11, 13, 30, 0), new GregorianCalendar(2007, 8, 11, 14, 30, 0)),

这是我的Flight Object 1& 2,在一个名为flight的对象数组中有更多。最近我把清单分类为来源城市和出发时间。

现在我正在试图弄清楚如何按出发和排序对一组物体进行排序。到达时间。

这都是使用比较方法。

有人可以给我看一些代码,按出发顺序对这两个对象进行排序吗?到达时间,或让我开始,我有点难过。

3 个答案:

答案 0 :(得分:0)

您可以使用Collections.sort方法

Collections.sort(flight, Flight.getDepartureTime()); //First argument is name of the list

Collections.sort(flight, Flight.getArrivalTime());

或者您可以使用Arrays.sort这样的方法:

Arrays.sort(flight, Flight.getDepartureTime()); //First argument is name of the array

Arrays.sort(flight, Flight.getArrivalTime()); 

答案 1 :(得分:0)

您可以在Comparable课程中实施Flight界面,然后覆盖compareTo()方法,之后您可以在内部进行比较。

答案 2 :(得分:0)

如果我正确理解了您的问题,您可以使用Collections.sort,并为您的对象定义compareTo方法来完成此操作,如以下答案所示:How to sort by two fields in Java?