Scanner中的next(),nextLine()用法区别

  1. 输入的字符无空格,NextLine()在前
		Scanner input = new Scanner(System.in);
		 
        System.out.println("请输入字符串(nextLine):");
        String str1 = input.nextLine();
        System.out.println(str1);
 
        System.out.println("请输入字符串(next):");
        String str = input.next();
请输入字符串(nextLine):
你好张三(输入)
你好张三
请输入字符串(next):
你好张三(输入)
你好张三
  1. 输入的字符有空格,NextLine()在前
请输入字符串(nextLine):
你好	张三(输入)
你好	张三
请输入字符串(next):
你好	张三(输入)
你好
  1. 输入的字符无空格, Next()在前
请输入字符串(next):
你好张三(输入)
你好张三
请输入字符串(nextLine)


输入完next的数据按Enter键后,nextline已经自动输出了一个空白行,这是因为next()读取到空白符前的数据时结束了,然后把回车“\r”留给了nextLine();所以上面nextLine()没有输出,不输出不代表没数据,是接到了空(回车“/r”)的数据

posted @ 2021-03-22 22:33  创造bug的夫  阅读(128)  评论(0)    收藏  举报