【问题标题】:display of the arrayList contentarrayList 内容的显示
【发布时间】:2018-01-18 13:06:13
【问题描述】:

我在一个类中有两个 arrayList,一个存储汽车,另一个存储货车。

我希望有一个选项来显示特定数组中的所有信息。例如,汽车请按 1,货车请按 2

我设法做了一些东西,但它不能正常工作,在我选择 2 后,它会向我显示所有货车,但不是继续下一行并询问要租哪个型号,而是再次询问“按 1对于汽车,对于面包车按 2"。

这是代码,希望你能理解我的问题

List<Van> vanlist = new ArrayList();
    vanlist.add(new Van("Mercedes", "Van2", "VBC842", 300, 500));
    vanlist.add(new Van("Mercedes", "Van3", "VBC489", 300, 500));
    vanlist.add(new Van("Mercedes", "Van1", "VBC970", 300, 500));
    vanlist.add(new Van("Mercedes", "Van4", "VBC153", 300, 500));

    Scanner input = new Scanner(System.in);
    System.out.print("Type 1 for cars; Type 2 for vans; Type 3 for trucks \n");
    int vop = input.nextInt();  
    for(Van van: vanlist) {
        if (vop == 2) {
            System.out.println(van);
        }  
    }

    System.out.print("Type 1 for cars; Type 2 for vans; Type 3 for trucks \n");
    int opt = input.nextInt();  
    for(Car car: carlist) {
        if (opt == 1) {
            System.out.println(car);

        }       
    }

    System.out.print("Enter model to rent: ");
    String model = input.nextLine();

【问题讨论】:

  • 您再次询问它,请参阅第二个 System.out.print("Type 1 for cars; Type 2 for vans; Type 3 for trucks \n"); 。您的代码运行良好。我不明白你为什么要使用两个变量 vop and opt 当你可以使用一个 SWITCH CASE 时。

标签: arraylist display info


【解决方案1】:

您可以使用此代码。

List<Van> vanlist = new ArrayList();
    vanlist.add(new Van("Mercedes", "Van2", "VBC842", 300, 500));
    vanlist.add(new Van("Mercedes", "Van3", "VBC489", 300, 500));
    vanlist.add(new Van("Mercedes", "Van1", "VBC970", 300, 500));
    vanlist.add(new Van("Mercedes", "Van4", "VBC153", 300, 500));

    Scanner input = new Scanner(System.in);
    System.out.print("Type 1 for cars; Type 2 for vans; Type 3 for trucks \n");
    int vop = input.nextInt();  
    Switch(vop){
    case 1:
    for(Van van: vanlist)             
            System.out.println(van);         
    break;

    case 2:     
    for(Car car: carlist)
            System.out.println(car);  
    break;
    default:
    System.out.println("Invalid Choice");
    break;
    }
    System.out.print("Enter model to rent: ");
    String model = input.nextLine();

请看这里,您不必使用两个变量。这对你有用。

【讨论】:

  • 非常感谢,它解决了我的问题。但是,现在,程序在最后一行之后终止。可能是什么问题?[程序在 String model = input.nextLine();][1] [1] 后终止:i.stack.imgur.com/Yp53c.png
猜你喜欢
  • 1970-01-01
  • 2018-05-28
  • 1970-01-01
  • 2021-03-01
  • 2014-11-26
  • 1970-01-01
  • 2021-04-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多