Java Scanner类的常用方法及用法(很详细) 您所在的位置:网站首页 vb基本语句的用法有哪些 Java Scanner类的常用方法及用法(很详细)

Java Scanner类的常用方法及用法(很详细)

2024-07-02 00:21| 来源: 网络整理| 查看: 265

Java Scanner类的方法及用法(很详细) Scanner类简介

Java 5添加了java.util.Scanner类,这是一个用于扫描输入文本的新的实用程序。它是以前的StringTokenizer和Matcher类之间的某种结合。由于任何数据都必须通过同一模式的捕获组检索或通过使用一个索引来检索文本的各个部分。于是可以结合使用正则表达式和从输入流中检索特定类型数据项的方法。这样,除了能使用正则表达式之外,Scanner类还可以任意地对字符串和基本类型(如int和double)的数据进行分析。借助于Scanner,可以针对任何要处理的文本内容编写自定义的语法分析器。

Scanner类的常用方法1

Scanner类的常用方法 其实上图的意思就是,比如:nextlnt():只读取int值,就是只能读取整数类型的数据,如果输入了非整型的数据(浮点型字符串等)就会报错。 nextFloat()、nextDouble()这些也是以此类推,只能读取符合该类型的数据。

此处重点讲一下next()和nextLine()的区别

next():只读取输入直到空格。它不能读两个由空格或符号隔开的单词。此外,next()在读取输入后将光标放在同一行中。(next()只读空格之前的数据,并且光标指向本行)

nextLine():读取输入,包括单词之间的空格和除回车以外的所有符号(即。它读到行尾)。读取输入后,nextLine()将光标定位在下一行。

代码演示: public class Text { public static void main(String []args) { Scanner input = new Scanner(System.in); System.out.println("请输入一个字符串(中间能加空格或符号)"); String a = input.nextLine(); System.out.println("请输入一个字符串(中间不能加空格或符号)"); String b = input.next(); System.out.println("请输入一个整数"); int c; c = input.nextInt(); System.out.println("请输入一个double类型的小数"); double d = input.nextDouble(); System.out.println("请输入一个float类型的小数"); float f = input.nextFloat(); System.out.println("按顺序输出abcdf的值:"); System.out.println(a); System.out.println(b); System.out.println(c); System.out.println(d); System.out.println(f); } }

运行结果:

请输入一个字符串(中间能加空格或符号) 我爱祖国! 请输入一个字符串(中间不能加空格或符号) ILoveChina 请输入一个整数 520 请输入一个double类型的小数 12.26e3 请输入一个float类型的小数 3.1415926 按顺序输出abcdf的值: 我爱祖国! ILoveChina 520 12260.0 3.1415925 Scanner类的常用方法2

这里写图片描述

代码演示: public class inputInformation { public static void main(String args[]) { Scanner scan = new Scanner(System.in); //构造Scanner类的对象scan,接收从控制台输入的信息 System.out.println("请输入你的姓名"); String name = scan.nextLine();//接收一个字符串,可以加除Enter以外的所有符号,包括空格和Tab System.out.println("请输入你的ID"); String ID ; while(scan.hasNextLine()) {// hasNextLine()方法判断当前是否有输入,当键盘有输入后执行循环 if(scan.hasNextInt()) {// 判断输入的值是否为整数类型,当为整数类型时执行循环 ID = scan.nextLine(); System.out.println("你输入的姓名为:"+name); System.out.println("你输入的ID为:"+ID); break; }else { System.out.println("请输入数字哦!"); ID = scan.nextLine(); continue; } } } }

运行结果如下:

请输入你的姓名 西地那非 请输入你的ID q764323221 请输入数字哦! 764323221


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有