我有两个java类
public class FlightManager extends Flight
public class Aircraft implements Comparable<Aircraft> 在FlightManager课上,我有
ArrayList<Aircraft> airplanes = new ArrayList<Aircraft>();
public FlightManager() {
// Create some aircraft types with max seat capacities
airplanes.add(new Aircraft(85, "Boeing 737"));
airplanes.add(new Aircraft(180, "Airbus 320"));
airplanes.add(new Aircraft(37, "Dash-8 100"));
airplanes.add(new Aircraft(12, "Bombardier 5000"));
airplanes.add(new Aircraft(592, 14, "Boeing 747"));
.
.
.
}
// Prints all aircraft in airplanes array list.
// See class Aircraft for a print() method
public void printAllAircraft() {
}对于printAllAircraft,我需要在飞机类中使用打印方法
在飞机上,我有
public void print()
{
System.out.println("Model: " + model + "\t Economy Seats: " + numEconomySeats + "\t First Class Seats: " + numFirstClassSeats);
}
public Aircraft(int seats, String model)
{
this.numEconomySeats = seats;
this.numFirstClassSeats = 0;
this.model = model;
}
public Aircraft(int economy, int firstClass, String model)
{
this.numEconomySeats = economy;
this.numFirstClassSeats = firstClass;
this.model = model;
}如何创建一个飞行器对象并将该ArrayList传递给它的构造函数(如果正确的话)并使用打印方法打印所有条目?
感谢你的帮助!
发布于 2021-03-24 00:13:49
您的飞机列表在FlightManager中,并且显示您已经在那里添加了printAllAircraft()。您需要迭代您的飞机列表,并在每个列表上调用打印,因此类似这样的内容应该可以工作:
public void printAllAircraft() {
for(Aircraft currentPlane : this.airplanes){
currentPlane.print();
}
}发布于 2021-03-24 00:13:56
在您的FlightManager类中,您可以这样做:
ArrayList<Aircraft> airplanes = new ArrayList<Aircraft>();
public FlightManager() {
// Create some aircraft types with max seat capacities
airplanes.add(new Aircraft(85, "Boeing 737"));
airplanes.add(new Aircraft(180, "Airbus 320"));
airplanes.add(new Aircraft(37, "Dash-8 100"));
airplanes.add(new Aircraft(12, "Bombardier 5000"));
airplanes.add(new Aircraft(592, 14, "Boeing 747"));
printAllAircraft(airplanes);
}
// Prints all aircraft in airplanes array list.
// See class Aircraft for a print() method
public void printAllAircraft(ArrayList<Aircraft> airCraftList) {
airCraftList.forEach((ac) -> ac.print());
}我在构造器上添加了对象,所以您可以在任何地方使用它,但是可以使用您拥有的全局airplanes变量。
https://stackoverflow.com/questions/66772954
复制相似问题