如何使用case语句显示数组中的信息?

时间:2015-05-08 15:59:16

标签: java arrays

我正在尝试创建一个基于菜单的应用程序,该程序将为3个子类创建5个超读初始数据实例的数组。

我想输出我为此5个实例中的每一个设置的详细信息。

public static void main(String[] args)
{
for (int i=0; i<5; i++)

    {
Ford myFord = new Ford("no1", "A", 3.2, 2.1, 3.1, 43.4, 9, 10.2);
Ford myFord2 = new Ford ("no2", "B", 1.1, 2.1, 3.1, 43.4, 9, 10.2);    
BMW myBMW = new BMW ("no3", "C", 1.1, 2.1, 3.1, 43.4, 5.0, 100);
BMW myBMW2 = new BMW ("no4", "D", 1.1, 2.1, 3.1, 43.4, 5.0, 100);
Merc myMerc = new Merc ("no5", "E", 1.1, 2.1, 3.1, 43.4, 5.0, 9, "wood");

Car[] myCar = new Car [5];

myCar[0]=myFord;    
myCar[1]=myFord2;   
myCar[2]=myBMW; 
myCar[3]=myBMW2;    
myCar[4]=myMerc; 

这是案例陈述。我不知道如何使用案例输出信息。

switch(CarNo)
                        {
                            case 1: myCar[0];
                            break;

                            case 2: myCar[1];
                            break;

                            case 3: myCar[2];
                            break;

                            case 4: myCar[3];
                            break;

                            case 5: myCar[4];
                            break;
                        }

1 个答案:

答案 0 :(得分:2)

我会删除循环,除非您因某些原因而无需提及。我也会一次创建你需要的数组。

public static void main(String[] args)
    Car[] cars = { new Ford("no1", "A", 3.2, 2.1, 3.1, 43.4, 9, 10.2),
                   new Ford("no2", "B", 1.1, 2.1, 3.1, 43.4, 9, 10.2),
                   new BMW("no3", "C", 1.1, 2.1, 3.1, 43.4, 5.0, 100),
                   new BMW("no4", "D", 1.1, 2.1, 3.1, 43.4, 5.0, 100),
                   new Merc("no5", "E", 1.1, 2.1, 3.1, 43.4, 5.0, 9, "wood") };

    // use the array here e.g.
    for (int i = 0; i < cars.length; i++)
        System.out.printf("%d: %s%n", i, cars[i]);

    String line = Console.readLine("Please select [0-%d] ", cars.length-1);
    int option = Integer.parseInt(line);
    Car car = cars[option];
    System.out.println("You selected a " + car);