学习java过程中遇到的一个问题:
java中nextLine方法没有输入就跳过了。
1 Scanner sc = new Scanner(System.in);
中间省略一些代码
1 System.out.println("请输入第二个字符串:");
2 String data2 = sc.nextLine();
3 System.out.print(data2);
这里nextLine()方法不等你输入就结束了。
改进的方法是:
在String data2 = sc.nextLine();的上一行插入一行:sc.nextLine();
这里sc.nextLine();的作用是用来“吞掉”前面输入过程中敲下的换行符或回车键。
示例如下:
1 import java.util.Scanner;
2 public class Test001 {
3 public static void main(String[] args) {
4 Scanner sc = new Scanner(System.in);
5
6 System.out.println("请输入一个字符串:");
7 String data1 = sc.next();//当输入空格后就不再接收
8 System.out.println(data1);
9
10 System.out.println("请输入第二个字符串:");
11 sc.nextLine();//用来“吞掉”上面的回车键,使得下一行可以接收数据,而不是直接跳过
12 String data2 = sc.nextLine();//如果没有上一行,这里会把上一段的换行符给接收了,而不是接收你的输入
13 System.out.print(data2);
14
15 }
16 }