Scanner 键盘输入流 nextLine() 和next() 的区别
Posted 1314htq-
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Scanner 键盘输入流 nextLine() 和next() 的区别相关的知识,希望对你有一定的参考价值。
import java.util.Scanner; public class demo2 { public static void main(String[] args) { //创建一个扫描器对象,用于接收键盘数据 Scanner scanner = new Scanner(System.in); System.out.println("通过next()方法获取键盘输入"); //判断用户有没有输入字符串 if(scanner.hasNext()){ String str = scanner.next(); System.out.println(str);//这里我们输入的hello world,但是只打印了hello } //凡是IO流的类如果不关闭一直会占用资源 scanner.close(); } }
import java.util.Scanner; public class demo1 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("使用nextLine接收用户输入"); //用if判断用户有没有输入 if(scanner.hasNextLine()){ //如果有值输入的话就给str String str = scanner.nextLine(); System.out.println(str);//这里我们输入的hello world,但是打印了hello hello world } scanner.close(); } }
next():
- 一定要读取到有效字符后才可以结束输入
- 对输入有效字符之前遇到的空白,next()方法会自动将其去掉
- 只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符
- next() 不能得到带有空格的字符
nextLine():
- 以回车为结束符也就是说nextLine()方法返回的是输入回车之前的所有字符
- 可以获得空白
以上是关于Scanner 键盘输入流 nextLine() 和next() 的区别的主要内容,如果未能解决你的问题,请参考以下文章
Scanner类的next() 和nextLine()的区别
Scanner类的next() 和nextLine()的区别
Scanner类的next() 和nextLine()的区别