在java中,我想在扫描程序中输入一个字符串,但它只会占用字符串直到一个空格

时间:2016-06-18 19:24:22

标签: java

我的示例输入: 欢迎来到Java

我输出的代码如下: 欢迎

预期产量: 欢迎来到java

以下代码接受带空格的多个字符有什么问题?如果我使用nextLine(),那么我将不允许输入字符串。

我明白了。谢谢你的帮助。

import java.util.Scanner;
public class Example {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int i = scan.nextInt();
        double d = scan.nextDouble();
        //edited*******************
        String s = scan.nextLine();
        s = scan.nextLine();
        //*************************
        System.out.println("String: " + s);
        System.out.println("Double: " + d);
        System.out.println("Int: " + i);
    }
}

1 个答案:

答案 0 :(得分:0)

调用scan.next()会导致程序一直运行到达空格等,然后返回它找到的内容。使用scan.nextLine()可以解决问题。