Java 我如何嵌入一个用户界面,使用和数组列表而不是我已经拥有的数组来输入各种类型的汽车

Java 我如何嵌入一个用户界面,使用和数组列表而不是我已经拥有的数组来输入各种类型的汽车,java,netbeans,Java,Netbeans,这是我的课 package javaapplication1; public class Car { private String model; private String reg; private String colour; private double litreEngine; //Default Constructor public Car() { model = null; reg = null; colour = null; litreEngi

这是我的课

package javaapplication1;

public class Car {

private String model;
private String reg;
private String colour;
private double litreEngine;

//Default Constructor
public Car() {
    model = null;
    reg = null;
    colour = null;
    litreEngine = -1;
}

public Car(String startModel, String startReg, String startColour, double startLitreEngine) {
    model = startModel;
    reg = startReg;
    colour = startColour;
    litreEngine = startLitreEngine;
}




//Prints out Car attributes

public void print() {
    System.out.println("Model:" + model + "Reg:" + reg + "Colour:" + colour + "litreEngine:" + litreEngine);
}

public String toString() {
   return ("Model:" + model + " Reg: " + reg + " Colour: " + colour + " Litre Engine: " + litreEngine);
}

//Get and set Methods
public String getModel() {
    return model;
}

public String getReg() {
    return reg;
}

public String getColour() {
    return colour;
}

public double getLitreEngine() {
    return litreEngine;
}

public void setModel(String new_model)
{
    model = new_model;
}

public void setReg(String new_Reg)
    {
        reg = new_Reg;
}

public void setnumberOfHoursPerWeek(String new_colour)
{
            colour = new_colour;
}

public void setcompulsory(double new_litreEngine)
{
            litreEngine = new_litreEngine;
}

}
这是我的测试课

package javaapplication1;

import java.util.Scanner;

public class CarTestApp {

public static void main(String[] args) {
    Scanner in = new Scanner(System.in);
    Car[] values = new Car[4];
    int i = 0;
    String Continue = "Y";
    String Stop = "N";
    String answer = null;

    //Car c = new Car("VW Golf", "01D1234", "Red", 1.6);
    //Car d = new Car("Mazda MX-5", "03WW324", "Olive", 1.6);
    //Car e = new Car();

    // Creates car details from user input.
    do {
        System.out.println("Enter model details: ");
        String model = in.nextLine();

        System.out.println("Enter reg details: ");
        String reg = in.nextLine();

        System.out.println("Enter colour details: ");
        String colour = in.nextLine();

        System.out.println("Enter engine details:(Number) ");
        String line = in.nextLine();
        double litreEngine = Double.parseDouble(line);
        //double litreEngine = in.nextDouble();

        Car one = new Car(model, reg, colour, litreEngine);
        values[i] = one;
        i++;

        if (i < values.length) {
            System.out.println("Do you want to add another car?(Y/N)");
            answer = in.nextLine();
        }
    } while (answer.equalsIgnoreCase(Continue) && i < values.length);



    System.out.println("Thank you for inputting this information");

    System.out.println(values[0]+"\t"+values[1]+"\t"+values[2]+"\t"+values[3]);
}
}
PackageJavaApplication1;
导入java.util.Scanner;
公共类卡特斯塔普{
公共静态void main(字符串[]args){
扫描仪输入=新扫描仪(系统输入);
汽车[]值=新车[4];
int i=0;
字符串Continue=“Y”;
字符串Stop=“N”;
字符串应答=null;
//c车=新车(“大众高尔夫”,“01D1234”,“红色”,1.6);
//d车=新车(“马自达MX-5”、“03WW324”、“橄榄”,1.6);
//e车=新车();
//根据用户输入创建汽车详细信息。
做{
System.out.println(“输入模型详细信息:”);
字符串模型=in.nextLine();
System.out.println(“输入注册表详细信息:”);
字符串reg=in.nextLine();
System.out.println(“输入颜色详细信息:”);
字符串颜色=in.nextLine();
System.out.println(“输入引擎详细信息:(编号)”;
String line=in.nextLine();
double-litreEngine=double.parseDouble(行);
//double litreEngine=in.nextDouble();
第一辆车=新车(型号、注册号、颜色、litreEngine);
值[i]=1;
i++;
if(i
我认为您需要一个菜单驱动的程序来与用户交互以完成不同的任务

首先,您需要不同的方法,这将完成添加汽车的工作。然后你可以有一个开关箱,它可以处理你的各种情况

public static void main(String args) {

    int choice = 0;
    char redo = 'n';

    do {   
        System.out.println("Enter your choice:");
        System.out.println("1. Add a car \n 2. Exit");

        choice = /** Read choice from user **/

        switch (choice) {
              case 1: addCar();                          
                      System.out.println("Do you want to continue? (Y or N)?");
                      redo = /** read char from user ('y' or 'n') **/
                      break;

              case 2: redo = 'n';
                      break;
        }

    } while (redo == 'Y' || redo == 'y'));
}

public static void addCar() {
    // Add the Car adding logic here
}

您可以声明一个可以动态增加大小的
ArrayList
,而不是使用
Array
来存储
Cars
。您需要在主方法之外声明它作为实例变量。

在标题中,很抱歉我应该将它放在其他地方。还要解释您遇到了什么问题?代码本身没有问题,我只是不确定如何添加用户界面,例如,1.添加汽车2.退出如何使用数组列表而不是数组来执行此操作?您需要切换大小写并执行while循环。不同的任务有不同的方法。如果你的问题解决了,你需要单击答案旁边的箭头,将其标记为已接受。@JimMcool。看看这篇文章。您需要在我留下评论的地方添加相应的代码。