package Scanner;
import java.util.Scanner;
public class Happy01 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("使用next方式接收:");
if (scanner.hasNext()){
String str1 = scanner.next();
System.out.println("输出内容为:"+str1);
}
System.out.println("==================================");
System.out.println("使用nextLine方式接收:");
if (scanner.hasNextLine()){
String str2 = scanner.nextLine();
System.out.println("输出内容为:"+str2);
}
scanner.close();
}
}
使用next方式接收:
hello world
输出内容为:hello
==================================
使用nextLine方式接收:
输出内容为: world
为什么在使用nextLine接收时我没键盘输入他就继续跑完了
因为有缓存,重新创建一个输入流。
import java.util.Scanner;
public class Main {
public static void main(String[] args){
Scanner scanner = new Scanner(System.in);
System.out.println("使用next方式接收:");
if (scanner.hasNext()){
String str1 = scanner.next();
System.out.println("输出内容为:"+str1);
}
System.out.println("==================================");
System.out.println("使用nextLine方式接收:");
scanner = new Scanner(System.in);
if (scanner.hasNextLine()){
String str2 = scanner.nextLine();
System.out.println("输出内容为:"+str2);
}
scanner.close();
}
}
你的第 9行 是has.next()
此方法,在命令行 会接收回车 之前的输入内容
回车会作为 空格 null 留在 命令行
所以下一次 从命令行获取 内容的时候 ,会录入进去
望采纳!