int i = 4;
String s ="Hi ";
Scanner scan = new Scanner(System.in);
System.out.println("enter Integer");
int m=scan.nextInt();
System.out.println("enter string");
*String t = scan.next();
**String t = scan.nextLine();
System.out.println(i+m);
System.out.println(s+t);
当我使用* scan.next()时它只会读取一个单词,当我使用** scan.nextLine()时它会直接显示输出
答案 0 :(得分:0)
在nextLine()
之后致电nextint()
消费\n
。
int a = scanner.nextInt()
scanner.nextLine() // to flush end of line
... // Then read string
String s = scanner.next()
整个故事
输入一个数字后,说5 .. 流看起来像 5\n
调用nextInt()
时
流看起来像
\n
输入字符串后,请说“hi
” \nhi
调用next()
后
流看起来像
hi
问题原因:next()
消耗到\n
当它被调用时\n
是流中的第一个字符。所以它读取空字符串""
。