在Java语言中,格式化输入是通过类java.util.Scanner来完成的。默认情况下,Scanner是使用“空白”作为分隔符将输入分解为标记,然后使用它所提供的不同的next方法将得到的标记转换为不同的类型的值。
Scanner scan = new Scanner(System.in);
System.out.print("请输入:");
String year = scan.next();
System.out.printf("%s",year);
由于Scanner对象将首先跳过输入流开头的所有空白分隔符,然后对输入流中的信息进行检查,直到遇到空白分隔符为止;因此输入数据:this is a test;空白后面的字符:is a test不会显示输出来。
那如何将含有空格的数据输出呢?
这时就需要用Scanner.useDelimiter( )方法,可以将分隔符号修改为"回车",或者其他字符。
useDelimiter( )方法用法如下
//useDelimiter("\n"); //“\n”换行符(回车)作为输入的分隔符
Scanner scan = new Scanner(System.in).useDelimiter("\n");
System.out.print("请输入:");
String year = scan.next();
System.out.printf("%s",year);