扫描仪在空间后看不到

ige*_*r12 31 java java.util.scanner

我正在编写一个程序,询问该人的全名,然后接受该输入并将其反转(即John Doe - Doe,John).我开始尝试获取输入,但它只获得了第一个名字.

这是我的代码:

public static void processName(Scanner scanner) {
    System.out.print("Please enter your full name: ");
    String name = scanner.next();
    System.out.print(name);
}
Run Code Online (Sandbox Code Playgroud)

Pra*_*ran 50

改为 String name = scanner.nextLine();而不是String name = scanner.next();

在此处查看有关文档的更多信息 - next()nextLine()

  • 我有同样的问题,但我使用nextLine()的字符串最终为空.这就是我的代码:`System.out.print("License plate:"); String license = sc.nextLine();`.发布此答案后,扫描仪是否发生了变化? (2认同)

Woo*_*ody 15

尝试替换您的代码

String name = scanner.nextLine();
Run Code Online (Sandbox Code Playgroud)

代替

String name = scanner.next();
Run Code Online (Sandbox Code Playgroud)

next()只能读取输入space.它无法读取两个分隔的单词space.此外,next()在读取输入后将光标放在同一行.

nextLine()读取包括space单词之间的输入(即,读取直到行的结尾\n).读取输入后,nextLine()将光标定位在下一行.