我正在使用存储在数组和/或数组列表中的用户输入来学习汽车车库课程。这些至少是提供的具体说明。我是编程新手,缺乏一些技术语言。感谢您的提前帮助。
当前问题:我可以接受用户输入/输入,但是最后输入的汽车将是唯一保存并输出的汽车。
public class Car {
String make;
String model;
int year;
double price;
public String getMake() {
return make;
}
public void setMake(String make) {
this.make = make;
}
public String getModel() {
return model;
}
public void setModel(String model) {
this.model = model;
}
public int getYear() {
return year;
}
public void setYear(int year) {
this.year = year;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
}
public class CarApp {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
char userCon = 'Y';
System.out.println("Welcome to the Garage!");
while(userCon =='Y') {
System.out.println("How many cars will you be entering?");
int carAmount = scan.nextInt();
ArrayList<Car> car = new ArrayList<Car>(carAmount);
Car carMake = new Car();
Car carYear = new Car();
Car carModel = new Car();
Car carPrice = new Car();
for(int i =0;i<carAmount;i++) {
System.out.println("Enter the make of the car " + (i + 1) + ":");
carMake.make = scan.next();
System.out.println("Enter the model of the car: ");
carModel.model = scan.next();
System.out.println("Enter the year: ");
carYear.year = scan.nextInt();
System.out.println("Enter the price: ");
carPrice.price = scan.nextDouble();
System.out.println("Thank you, Car " + (i + 1) + " is set!");
}
System.out.println("The garage is holding " + carAmount + " cars.");
for(int n =0;n<carAmount;n++) {
System.out.println("Make: " + carMake.getMake());
System.out.println("Model: " + carModel.getModel());
System.out.println("Year: " + carYear.getYear());
System.out.println("Price: " + carModel.getPrice());
}
System.out.println("Would you like to try again? Y/N");
String word = scan.next();
word = word.toUpperCase();
userCon = word.charAt(0);
}
scan.close();
}
}
答案 0 :(得分:0)
public class CarApp {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
char userCon = 'Y';
System.out.println("Welcome to the Garage!");
while(userCon =='Y') {
System.out.println("How many cars will you be entering?");
int carAmount = scan.nextInt();
ArrayList<Car> carList = new ArrayList<Car>(carAmount);
for(int i =0;i<carAmount;i++) {
Car car = new Car();
System.out.println("Enter the make of the car " + (i + 1) + ":");
car.make = scan.next();
System.out.println("Enter the model of the car: ");
car.model = scan.next();
System.out.println("Enter the year: ");
car.year = scan.nextInt();
System.out.println("Enter the price: ");
car.price = scan.nextDouble();
System.out.println("Thank you, Car " + (i + 1) + " is set!");
carList.add(car);
}
System.out.println("The garage is holding " + carAmount + " cars.");
for (Car car : carList) {
System.out.println("Make: " + car.getMake());
System.out.println("Model: " + car.getModel());
System.out.println("Year: " + car.getYear());
System.out.println("Price: " + car.getPrice());
}
System.out.println("Would you like to try again? Y/N");
String word = scan.next();
word = word.toUpperCase();
userCon = word.charAt(0);
}
scan.close();
}
您需要创建一个Car对象,并需要将值分配给该汽车的特定对象。您可以循环执行此操作并将其添加到carList。循环完成后,carList包含汽车列表。您需要迭代该列表以打印数据。