Itinerary 类通过以下成员存储有关行程的信息:
• 名为 Flights 的私有(private) ArrayList 数据字段,其中包含以下行程的航类 出发时间递增顺序。 (提示:您不需要进行排序。)
• 一个构造函数,用于创建包含 ArrayList 类型中的指定航类的行程。
• 名为 getTotalFlightTime() 的方法,返回行程的总飞行时间(以分钟为单位)。 (提示:为每个 Flight 对象调用 getFlightTime() 方法。)
• 名为 getTotalTravelTime() 的方法,返回从 行程中首个航类的起飞时间至最后一个航类的到达时间。假设所有的 时间位于同一时区。
package que6;
/**
*
* @author vpi764
*/
import java.util.ArrayList;
import java.util.GregorianCalendar;
public class TestFlightItinerary {
public static void main(String[] args) {
lic static void main(String[] args) {
ArrayList<Flight>flights = new ArrayList<>();
Flight F1 = new Flight("US230", new GregorianCalendar(2014, 5, 5, 5, 5, 0), new GregorianCalendar(2014, 5, 5, 6, 15, 0));
Flight F2 = new Flight("US235", new GregorianCalendar(2014, 5, 5, 6, 55, 0), new GregorianCalendar(2014, 5, 5, 7, 45, 0));
Flight F3 = new Flight("US237", new GregorianCalendar(2014, 5, 5, 9, 35, 0), new GregorianCalendar(2014, 5, 5, 12, 55, 0));
flights.add(F1);
flights.add(F2);
flights.add(F3);
}
}
class Flight{
private String flightNo;
private GregorianCalendar departureTime;
private GregorianCalendar arrivalTime;
//Constructor
Flight(String SpecNo,GregorianCalendar SpecDtime ,GregorianCalendar SpecAtime ){
this.flightNo = SpecNo;
this.departureTime = SpecDtime;
this.arrivalTime = SpecAtime;
}
//Getters
public String GetFlightNo() {
return flightNo;
}
public GregorianCalendar GetDtime() {
return departureTime;
}
public GregorianCalendar GetAtime() {
return arrivalTime;
}
//setters
// If we don't use setter the could would still work because we are getting input in constructor with parameters
public void SetFlightNo(String Number) {
flightNo = Number;
}
public void SetDtime(GregorianCalendar Dtime) {
departureTime = Dtime;
}
public void SetAtime(GregorianCalendar Atime) {
arrivalTime = Atime;
}
public long getTimeinMillis() {
return (arrivalTime.getTimeInMillis() - departureTime.getTimeInMillis());
}
// getFlightTime method
public long getFlightTime() {
return getTimeinMillis() / (60 * 1000);
}
}
class Itinerary {
ArrayList<Flight> flights = new ArrayList<>();
public Itinerary(){
this.flights = flights;
}
public long getTotalFlightTime(ArrayList<Flight> flights){
}
public long getTotalTravelTime(){
}
}
最佳答案
ArrayList 维护元素添加的顺序。也许这就是暗示。
关于java - 我无法弄清楚 getTotalFlightTime(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58677353/