P9、Java流程控制01用户交互Scanner

控制台用户交互Scanner

java.util.Scanner是JAVA5的新特征,可以通过Scanner来获取用户的输入信息

基本语法:
Scanner $input=new Scanner(System.in);
int i=$inout.nextInt();
System.out.println("请输入:" );
System.out.println("输出的结果为:" + i);

拓展:

  1. 可以使用ALT+Enter自动补全"="前的代码
    例如:new Scanner(System.in);使用ALT+Enter
  2. $ input.close;关闭控制台,避免占用
使用hasNext来判断用户的输入格式

基本语法:

 System.out.println("判断控制输入是否为有效数据");
        System.out.println("输入int数据:");
        Scanner $input=new Scanner(System.in);
        //接收int数据并且判断
        if ($input.hasNextInt()){
            //接收用户信息
            int i = $input.nextInt();
            System.out.println("数据等于 = " + i);
        }else{
            System.out.println("格式错误!重新输入");
        }

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

 System.out.println("使用next与nextLine来判断用户的String输出");
        Scanner input = new Scanner(System.in);
        System.out.println("使用next接收:");
        //判断是否输出
        if (input.hasNext()){
            //用户接受数据 可使用input.next补全
            String str = input.next();
            System.out.println("输出的结果为:" + str);
        }

二、使用nextLine接收

 System.out.println("使用nextLine接收");
        Scanner input2 = new Scanner(System.in);
        //判断是否还有输出
        if (input2.hasNextInt()){
            //用户接受数据 可使用input.next补全
            String next = input2.next();
            System.out.println("输出的结果为:" + next);
        }
        //关闭控制台输入
        $input.close();
        input.close();
        input2.close();
总结区别:

next():

  1. 一定要读取到有效字符后才可以结束输入
  2. 对于有效字符遇到空白(空格),next()会自动去掉
  3. 只有输入有效字符后才将其后面的空白(空格)作为结束符或者分隔符
  4. next不能的得到带有空格的字符串
    nextLine():
  5. 以Enter为结束符,也就是说nextLine()方法是输入回车前的所有字符
  6. 可以获得空白!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值