易哥前面跟大家讲过,Java为我们提供了三种标准的“流”,统称为标准流。除了负责输出的流,还有负责输入的标准流,Java中对应的API是System.in。与标准输出相比,标准输入要复杂得多。尤其是直接使用System.in的时候,虽然可以读取用户输入,但是这种方法特别复杂,对我们初学者不友好。所以为了更方便的实现输入功能,易哥给大家介绍一个更简单的Scanner类。Scanner类2.1Scanner简介Scanner类是Java5中提供的一个简单的文本扫描器,负责解析基本类型和字符串。通过Scanner类,我们可以获取用户在控制台输入的数据。Scanner类中常用的API方法如下:nextInt():获取输入的整数;nextDouble():获取输入的双精度浮点数;nextLine():获取输入的字符串,包括单词中的空格和除cars以外的所有字符;next():获取输入字符串,只从有效字符开始计算。next()方法会自动移除在有效字符之前遇到的终止符,例如空格键、制表键、换行符或回车键。只有输入了有效字符后,next()方法才会将其后输入的空格键、Tab键或Enter键视为分隔符或结束符,并以空格结束。2.2使用步骤如果我们要使用Scanner,需要按照以下步骤进行:1.导入Scanner类;2.创建一个Scanner对象;3.使用Scanner对象扫描输入内容。接下来易哥会设计一个案例给大家讲解一下Scanner的具体使用。案例本案例对新手来说比较有挑战性,请专心学习。//1.导入引导包:importScannerclassimportjava.util.Scanner;publicclassDemo03{publicstaticvoidmain(String[]args){//输入语句//2.创建一个从键盘输入的Scanner扫描对象Scannersc=newScanner(System.in);//3。使用Scanner对象扫描输入内容(整数、小数、字符串、布尔值)//在控制台或命令行中输入数字,点击回车键结束System.out.println("Pleaseenteranumber");intnum=sc.nextInt();System.out.println("你输入的数字是:"+num);System.out.println("请输入小数A");双num2=sc.nextDouble();System.out.println("你输入的数字是:"+num2);System.out.println("请输入字符串");字符串str=sc.next();System.out.println("你输入的字符串是:"+str);}}本例效果如下:
