gpt4 book ai didi

java - 在 Java 中使用 java.util.Scanner 时出现 InputMismatchException

转载 作者:行者123 更新时间:2023-12-02 00:13:28 25 4
gpt4 key购买 nike

我正在尝试创建一种库存存储程序,用户可以在其中输入、删除和搜索商品和价格。但是,当输入值时,我收到一个InputMismatchException。这是我到目前为止的 WIP 代码:

String item;
double price;

while(running == true){

System.out.println("Enter the item");

item = input.nextLine();

System.out.println("Enter the price");

price = input.nextDouble();

inv.put(item, price);

System.out.println(inv);

}

我注意到,在循环的第二次迭代中,它跳过了获取字符串输入。这是控制台输出:

Enter the item
box
Enter the price
5.2
{box=5.2}
Enter the item
Enter the price
item
Exception in thread "main" java.util.InputMismatchException

最佳答案

input.nextLine() 将扫描仪带到下一行输入,但 input.nextDouble() 则不会。因此,您需要将扫描程序前进到下一行:

            price = input.nextDouble();
input.nextLine();

或者,您可以直接使用 nextLine() 并将其解析为 Double:

            price = Double.parseDouble(input.nextLine());

有关更多详细信息,请参阅此问题:Java: .nextLine() and .nextDouble() differences

关于java - 在 Java 中使用 java.util.Scanner 时出现 InputMismatchException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58106590/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com