一、Scanner类简介

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

Scanner类的常用方法1

其实上图的意思就是,比如: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以外的所有符号,包括空格和TabSystem.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

本文为CSDN博主「规则固态长方体物质空间移动工程师」的原创文章,原文链接:https://blog.csdn.net/qq_40164190/article/details/81917208

Java Scanner类的方法及用法(很详细)相关推荐

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

    Java Scanner类的方法及用法(很详细) Scanner类简介 Java 5添加了java.util.Scanner类,这是一个用于扫描输入文本的新的实用程序.它是以前的StringToken ...

  2. JAVA Scanner 类用法小结

    JAVA Scanner 类用法小结 1.Scanner是java中的一个类,可使用这个类创建一个对象,进行输入操作. Scanner reader = new Scanner(System.in): ...

  3. java scanner类 构造器,Java Scanner类

    本文概述 Java的Scanner类可在java.util包中找到. Java提供了多种从键盘读取输入的方法, java.util.Scanner类就是其中之一. Java Scanner类使用默认为 ...

  4. Java工具类系列--Arrays的用法

    原文网址:Java工具类系列--Arrays的用法_IT利刃出鞘的博客-CSDN博客 简介 本文用示例介绍Java中的Arrays的常用方法. Java中的Arrays是用来操作数组的工具类,支持如下 ...

  5. Java Scanner 类

    Java Scanner 类 java.util.Scanner 是 Java5 的新特征,我们可以通过 Scanner 类来获取用户的输入. 下面是创建 Scanner 对象的基本语法: Scann ...

  6. java drawstring字体大小,JAVA中,drawstring 方法的用法,格式是什么啊

    啦啦啦额68的回答 Java中Graphics类的drawString()方法: i)drawString(String str,int x,int y): String str是可以在屏幕上显示的字 ...

  7. java scanner类成员_Java Scanner类的使用示例

    1 Scanner的使用 JDK给我们提供了成千上万个类供我们直接使用,而Scanner就是这众多类里的一个最常用的一个类,既然它是一个类,我们使用它的方法和使用我们自己写的类的方法基本一致. 方法基 ...

  8. Java工具类系列--Objects的用法

    原文网址:Java工具类系列--Objects的用法_IT利刃出鞘的博客-CSDN博客 简介 本文用示例介绍Java中的Objects的用法. Java中的Objects是操作对象的工具类,有如下功能 ...

  9. Java Scanner类的详细介绍(Java键盘输入)

    Java Scanner类的详细介绍(Java键盘输入) 一.Scanner类的简单使用 二.Scanner类的详细介绍 1.判断输入数据类型 2.next()与nextLine()的区别 3.求多个 ...

最新文章

  1. nodejs png 转 rgb_90行代码,让微信登录界面的地球转起来
  2. iphone双卡_打开这个5G选项后:iPhone 12支持用蜂窝数据下载iOS更新|ios|iphone|应用程序|wi-fi...
  3. Response_案例4_验证码_点击切换
  4. java + maven 实现发送短信验证码功能
  5. 总结css中单位px和em,rem的区别
  6. 厉害了,Spring中bean的12种定义方法!
  7. Spring Cloud Gateway (七)处理流程解析
  8. gnome2 卷起_推荐4个非常漂亮的Gnome 3.2 主题[PPA]
  9. ReactiveCocoa 用法实例
  10. java随机取数组_java基础自动数组(获取随机数组的最大数和最小数)
  11. Android Open Source Projects(汇总与整理)
  12. 雅虎市值_也许不算雅虎! 刚出来
  13. 解决微软拼音不显示备选字的问题
  14. java生成短信验证码_Java随机生成手机短信验证码的方法
  15. 福建力得温控器_福建力得干变温控器LD-B10-10D、LD-B10-10F、LD-B10-10E系列高精度变压器温度控制器...
  16. 微软、IBM联合开拓移动办公市场 PK苹果?
  17. Linux会帮你打剩下的字符,当您在命令提示符的后面输入命令的一部分时,按(__),Linux会帮你打剩下的字符,补充成为完整命令...
  18. tdk怎么设置_网站TDK设置是什么意思?那么它又该如何优化呢?
  19. Java Web笔记-by戏言
  20. html中列表菜单加文字请选择,html中下拉菜单

热门文章

  1. 如何使用Stack Overflow ?
  2. ESLint:可组装的JavaScript和JSX检查工具
  3. C++中的内存管理、内存泄漏和内存回收
  4. 爬虫-模拟点击,实现加载页面全部内容
  5. ipad已有2周未备份。ipad插入电源、被锁定且接入Wi-Fi时会进行备份
  6. 集合框架中的共性功能
  7. matlab地球月球卫星关系,Matlab 卫星绕地球旋转演示动画
  8. 外派公司或者外包公司,真的适合选择吗?
  9. 网络模型——四种常见网络IO模型
  10. Wayland 下使用腾讯会议