0

每当我使用 Scanner 处理输入字符串并且字符串包含空格时,只会出现第一个单词。如何调整它以便将整个短语输入到一个字符串变量中?

我的代码:

import java.util.Scanner;

public class HelloWorld {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        System.out.print("Enter your name: ");
        String name = scan.next();
        String namefinal = name.replace(' ', '_');
        System.out.println(namefinal);
    }   
}
4

3 回答 3

9

尝试scan.nextLine()代替scan.next()

于 2012-08-15T19:19:49.993 回答
8

Scanner 使用分隔符模式将其输入分解为标记,默认情况下匹配空格

来源:扫描仪 Javadoc

于 2012-08-15T19:20:17.817 回答
-2

如果您真的想一步到位,则必须实现自己的阅读器或使用JOptionPane. 这是一个例子

公共类 HelloWorld {

public static void main(String[] args) {

    System.out.print("Enter your name: ");
    String name = JOptionPane.showInputDialog("Enter your name");
    System.out.println(name);

}

}

于 2012-08-15T19:39:17.093 回答