扫描仪记录带空格和数字的字符串?

时间:2016-08-31 00:20:45

标签: java eclipse java.util.scanner

我通过扫描仪接受用户输入,需要记录类似" Gallon 2%牛奶。" 现在我有

    System.out.print("Enter product description: ");
    String description = in.next();

现在这适用于像"牛奶"但当我进入加仑2%牛奶"它返回一个错误。

另外,我已尝试使用

    String description = in.nextLine();

但打印"输入产品说明:输入产品数量:"

我假设这是因为我的代码中的下一行是

    System.out.print("Enter product quantity: "); 

提前感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

如果在System.out.print("Enter product description: ");之前有提示并且您在此之前按下ENTER键,则还需要使用nextLine来消耗该键击。

答案 1 :(得分:-1)

您应该使用in.nextLine()来获取字符串,包括空格和按下回车键。您在一行上获得两个输出的原因是因为您使用的是System.out.print(String)方法。这不会在输出流中添加新行,因此后续调用将附加到同一行。请改用System.out.println(String)