java13-scanner中的方法
//Scanner类中的方法
//优点一: 可以获取键盘输入的字符串
//优点二: 有现成的获取int,float等类型数据,非常强大,也非常方便;
public static void ScannerTest(){
Scanner sc = new Scanner(System.in);
System.out.println(“ScannerTest, Please Enter Name:”);
String name = sc.nextLine(); //读取字符串型输入
System.out.println(“ScannerTest, Please Enter Age:”);
int age = sc.nextInt(); //读取整型输入
System.out.println(“ScannerTest, Please Enter Salary:”);
float salary = sc.nextFloat(); //读取float型输入
System.out.println(“Your Information is as below:”);
System.out.println(“Name:” + name +"\n" + “Age:”+age + “\n”+“Salary:”+salary);
}
Scanner是Java5的新特征,主要功能是简化文本扫描。Scanner的中文意思就是扫描仪,也就是将一份数据从一个地方扫描并显示到另外一个地方。一个可以使用正则表达式来解析基本类型和字符串的简单文本扫描器。Scanner 使用分隔符模式将其输入分解为标记,默认情况下该分隔符模式与空白匹配。然后可以使用不同的 next 方法将得到的标记转换为不同类型的值。当通过new Scanner(System.in)创建一个Scanner,控制台会一直等待输入,直到敲回车键结束,把所输入的内容传给Scanner,作为扫描对象。而且Scanner类有一个假设,在输入结束时会抛出IOException,而Scanner类会把这个异常吞掉。
经常有人说使用Scanner的原因是因为它使用简便,不如说Scanner的构造器支持多种方式,构建Scanner的对象很方便。可以从字符串(Readable)、输入流、文件等等来直接构建Scanner对象,有了Scanner了,就可以逐段(根据正则分隔式)来扫描整个文本,并对扫描后的结果做想要的处理。
scanner好比一个带游标或者指针的扫描仪,调用其hasNextLine()好比将游标向前探索直到遇到一个换行符,如果这个过程中遇到字符串对象则返回true并且游标复位。调用其nextLine()方法其实就是游标向前探索直到遇到一个换行符,此时并不复位,而是游标直接定位到目标数据的下一行,并返回探索过程中检测到的数据包括空格。
java里常使用的方法next() 与 nextLine() 区别
next():
1、一定要读取到有效字符后才可以结束输入。
2、对输入有效字符之前遇到的空白,next() 方法会自动将其去掉。
3、只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。
next() 不能得到带有空格的字符串。
nextLine():
1、以Enter为结束符,也就是说 nextLine()方法返回的是输入回车之前的所有字符。
2、可以获得空白。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南