Scanner


键盘录入-Scanner

个可以使用正则表达式来解析基本类型和字符串的简单文本扫描器
scanner可以录入的 布尔型\整数型 \string
但是不可以录入char


提示:以下是本篇文章正文内容,下面案例可供参考

一、使用步骤

1.引入库

代码如下(示例):
位置在class上面

import java.util.Scanner;

2.创建键盘录入对象

代码如下(示例):

Scanner scan = new Scanner(System.in);
//scan 是对象名,标识符  下面讲解方法会用到
//new是一个关键字 创建对象的一个引用数据类型的对象

3.通过对象获取数据

//例如获取是int型的数据
int num = scan.nextInt();

4.释放数据

scan.close();
//其实这个也可以不写,但是要有这中意识,等到学习IO流要必须关流的

Scanner方法

next()

String str = scan.next();
//表示读取键盘输入的一段字符串,遇见空格和换行结束

nextInt()

int num = scan.nextInt();
//录入int类型的整数,遇见空格和换行结束

nextLine()

String str = scan.nextLine();
//录入一行,遇见换行符结束

Scanner使用中的问题

Scanner在使用时的问题
在代码的上方使用nextInt() 接收数据,如果下方为nextLine(),就会出现,等你第一个数据接收完换行时,下面那个nextLine()也会输出,因为nextInt遇见空格和换行就会结束,而nextLine()方法只有遇见换行才会结束,那么就会出现问题.
代码示例:

        Scanner sc = new Scanner(System.in);

        System.out.println("请您输入一个数字 : ");
        //录入数据
        int num = sc.nextInt();
        System.out.println("num = " + num);//100 "\r\n"

        Scanner sc1 = new Scanner(System.in);
        System.out.println("请您输入一段文字 : ");
        //录入数据
        String line = sc1.nextLine();
        System.out.println("line = " + line);//你好 "\r\n"

在这里插入图片描述

总结

问题解决:
如果键盘录入需要同时录入基本数据类型和字符串类型的数据

  1. 方式一:

    基本数据类型 用一个Scanner对象
    字符串类型数据 用另一个Scanner对象:
    
  2. 方式二:

  3.     如果nextInt()方法下面是nextLine()方法,那么在中间加入一个nextLine()方法就好了(这个直接写 
         nextLine() ; 就好).
    

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值