gpt4 book ai didi

java Scanner类的使用示例代码

转载 作者:qq735679552 更新时间:2022-09-29 22:32:09 34 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章java Scanner类的使用示例代码由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

Scanner类简介

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

为了实现程序与人的交互,java给我们提供了这样一个工具类,我们可以获取用户的输入。java.util.Scanner是Java5的新特征。我们可以通过Scanner类来获取用户的输入.

我们使用Scanner scanner = new Scanner(System.in);的基础语法来创建一个扫描对象,用于接收键盘数.

hasnext()与hasnextLine()的使用:

我们通过Scanner类的next()与nextLine()的方法获取输入的字符串。在读取前,我们一般需要使用hasNext()与hasNextLine()判断是否还有输入的数据.

当我们使用next方式接收时:

代码示例:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
package com.scanner;
 
import java.util.Scanner;
 
public class Demo01 {
     public static void main(String[] args) {
         //创建一个扫描对象,用于接受键盘数
         Scanner scanner= new Scanner(System.in);
         System.out.println( "使用next方式接收:" );
 
         //判断用户有没有输入字符串
         if (scanner.hasNext()){
             //使用next方式接收
             String str = scanner.next();
             System.out.println( "输出的内容为:" +str);
         }
          //凡是属于IO流的类如果不关闭会一直占用资源,关闭scanner
         scanner.close();
     }
}

next()注意点:(String str = scanner.next()),

  • 一定要读取到有效字符后才可以结束输入。
  • 对有效字符之前遇到的空白,next()方法会将其自动去掉。
  • 只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。
  • next()不能得到带有空格的字符串。

当我们使用nextLine()方式接收时:(String str = scanner.nextLine()),

代码示例:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
package com.scanner;
 
import java.util.Scanner;
 
public class Demo02 {
     public static void main(String[] args) {
         //从键盘接收数据
         Scanner scanner = new Scanner(System.in);
         System.out.println( "使用nextLine方式接收" );
 
         //判断是否还有输入
         if (scanner.hasNext()){
             String str = scanner.nextLine();
             System.out.println( "输出的内容为:" +str);
         }
         scanner.close();
     }
}

nextLine()注意点:

  • 以enter为结束符,也就是说nextLine()方法返回的是输入回车之前的所有字符。
  • 它可以获得空白。

当输入的数据类型不同时:如 。

Int型:Scanner.hasNextInt();//判断是否还有数据输入 。

​ Scanner.nextInt();//输入整数数据 。

Float型同上.

scanner进阶使用(与循环共同使用) 。

代码示例:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
package com.scanner;
 
import java.util.Scanner;
 
public class Demo04 {
     public static void main(String[] args) {
         Scanner scanner = new Scanner(System.in);
      //从键盘接收数据
         int i = 0 ;
         float f = 0 .0f;
         System.out.println( "请输入整数:" );
 
         if (scanner.hasNextInt()){           //判断是否还有数据输入;
             i = scanner.nextInt();
             System.out.println( "整数数据:" + i);
 
         } else {
             System.out.println( "输入的不是整数数据!" );
         }
         System.out.println( "请输入小数:" );
 
         if (scanner.hasNext()){
             f = scanner.nextFloat(); //代表为真
             System.out.println( "小数数据:" + f);
 
         } else {
             System.out.println( "输入的不是小数数据!" );
         }
         scanner.close(); // 凡是属于IO流的类如果不关闭会一直占用资源,关闭scanner
     }
}

到此这篇关于java Scanner类的使用的文章就介绍到这了,更多相关java Scanner类内容请搜索我以前的文章或继续浏览下面的相关文章希望大家以后多多支持我! 。

原文链接:https://www.cnblogs.com/kuangsun125/p/15055276.html 。

最后此篇关于java Scanner类的使用示例代码的文章就讲到这里了,如果你想了解更多关于java Scanner类的使用示例代码的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com