此代码仅显示输出
输入要添加的项目的名称输入项目的价格
虽然在将double作为输入之前应该使用名称。
newMenu = new Scanner(System.in);
System.out.println("Please select on of the menuItems \n 1. Premium \n 2. Discount \n 3. Standard ");
FileWriter file = new FileWriter(f,true);
//Create an instance of the PrintWriter class using output as the argument
PrintWriter abc = new PrintWriter(file);
if(newMenu.nextInt()==1){
abc.println("Premium");
System.out.println("Enter Name of the item you want to add");
String name=newMenu.nextLine();
abc.println(m1.getNoOfItems()+1+" "+name);
System.out.println("Enter the price of item");
double price=newMenu.nextDouble();
abc.println(price);
m1.setNoOfItems(m1.getNoOfItems()+1);
}
答案 0 :(得分:1)
而不是:
if(newMenu.nextInt() == 1){
您可以使用newMenu.nextLine()
代替:
if (Integer.parseInt(newMenu.nextLine()) == 1) {
虽然在取双倍输入之前应该取名字。
你没有得到这种情况,因为你不消耗所有的行。
答案 1 :(得分:0)
您需要在{"vm1":{"firstName":"test first name"},"vm2":{"lastName":"test last name"}}
之后使用\n
.nextInt()