首页 > 其他分享 >8-用户交互Scanner

8-用户交互Scanner

时间:2024-06-21 17:23:36浏览次数:23  
标签:scanner System 用户 println out 交互 输入 Scanner

Scanner对象

  • 我们可以通过Scanner类来获取用户的输入
java.util.Scanner

基本语法

Scanner s = new Scanner(System.in);
  • 通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取前我们一般需要使用hasNext()与hasNextLine()判断是否还有输入的数据。
        //输入Hello World!用next()与nextLine()分别接受

        //next()
        //创建一个扫描器对象scanner,用于接受键盘数据,后续用该对象的方法来操作
        Scanner scanner = new Scanner(System.in);

        System.out.println("使用next方式接收:");

        //判断用户有没有输入字符串
        if(scanner.hasNext()){
            //若用户有输入字符串,则创建一个字符串对象接收用户的输入(使用next方式接收)
            String str = scanner.next();
            System.out.println("输入的内容为:" + str);//输出Hello    next()不能得到带有空格的字符串(以空格为结束符)
        }

        //凡是属于IO流的类如果不关闭,则会一直占用资源,要养成好习惯用完就关掉
        scanner.close();


        //nextLine()
        //从键盘接收数据
        Scanner scanner = new Scanner(System.in);
        System.out.println("使用nextLine方式接受:");

        //判断是否还有输入
        if (scanner.hasNextLine()){
            String str = scanner.nextLine();
            System.out.println("输入的内容为:" + str);//输出Hello World! nextLine()以Enter为结束符,返回输入回车之前的所以字符
        }
//凡是属于io流的类如果不关闭会一直占用资源,要养成良好习惯用完就关掉
        scanner.close();
        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.hasNextFloat()){
            f = scanner.nextFloat();
            System.out.println("小数数据:" + f);
        }else {
            System.out.println("输入的不是小数数据!");
        }

        scanner.close();

Scanner练习

我们可以输入多个数字,并求其总和与平均数,每输入一个数字用回车确认,通过输入非数字来结束并输出执行结果

        //创建接收输入对象,创建完Scanner对象时在最后写关闭!
        Scanner scanner = new Scanner(System.in);
        //数字个数
        int n = 0;
        //和
        double sum = 0;
        //通过循环判断是否还有输入,并每一次循环进行求和统计
        while (scanner.hasNextDouble()){//用hasNextDouble()判断是否输入的是数字
            double x = scanner.nextDouble();
            n++;
            sum+=x;
        }
        System.out.println("总和是:" + sum);
        System.out.println("平均数是:" + (sum / n));
        //创建scanner类就要在最后写关闭,养成好习惯
        scanner.close();

标签:scanner,System,用户,println,out,交互,输入,Scanner
From: https://www.cnblogs.com/Mc9r4dy/p/18260947

相关文章

  • 百度在线分销商城小程序源码系统 分销+会员组+新用户福利 前后端分离 带完整的安装代
    系统概述百度在线分销商城小程序源码系统是一款集分销、会员组管理和新用户福利于一体的前后端分离的系统。它采用先进的技术架构,确保系统的稳定性、高效性和安全性。该系统的前端基于小程序开发,为用户提供了便捷的购物体验和交互界面。用户可以通过小程序轻松浏览商品、下单......
  • 用C语言编写程序,用户输入一个日期(格式:年 月 日),判断日期是否合法性
    #要求:”用户输入一个日期(格式:年月日),判断日期是否合法。“是”则输出“合法日期”,“否”则输出“非法日期”#涉及到Switch语句、if else语句的使用。bool类型,即为布尔型,变量定义。条件:1.如果年份能被400整除,那么是闰年;2.如果年份能被100整除但不能被400整除,那么是平年;3.......
  • linux添加用户批处理脚本
    目录分步执行添加用户并设置密码赋予用户docker权限赋予用户sudo权限批处理及在线执行命令整合静态资源服务器配置fluent风格在线执行划重点:curlhttp://{host}/add_user.sh|sh-s"password"分步执行添加用户并设置密码添加用户developer,uid与groupId均为1024,登录默......
  • 三、用户中心项目笔记----后端多环境实战+原始部署
    后端多环境主要是修改:    依赖的环境地址        数据库地址        缓存地址        消息队列地址        项目端口号    服务器配置后端怎么去区分不同的环境?我们后端的SpringBoot......
  • 【学习笔记】爱立信SPO 1400 CRAFT软件基础知识3——图形用户界面之管理树
    一、前期准备提示:下面所有学习内容都是基于以下条件完成的条件1.已经正确安装并正常运行SPO1400CRAFT软件(以下简称LCT)条件2.确认已正确使用爱立信SPO1400CRAFT软件通过网络登录设备(以下简称NE)具体登录教程参考:使用爱立信SPO1400CRAFT软件通过网络登录设备的详细......
  • [机器视觉]halcon应用实例 用户自定义多ROI模板匹配
    本示在前面几个halconROI示例的基础上继续扩展,更靠进实标情况。为了使ROI匹配更灵活,就要求可以让用户或工程根据实际使用情况自己去画ROI,想画几个是几个。数量不能在代码里写死。这次升级的主要是增加了一个while循环根据用户的鼠标按键来进行判断是否继续画,还是退出画ROI。效......
  • 不推荐macos用户购买focusee付费的理由
    当时我为什么购买focusee需要同时录制摄像头和屏幕:录视频的时候经常需要同时展示自己和电脑屏幕的内容。需要使用zoom功能:在录制过程中,偶尔需要放大特定区域,focusee可以很方便地添加这个特效。同时支持macOS和Windows,而且双设备购买有优惠。基于以上三点原因,我购买了f......
  • sshpass命令 – 非交互式验证SSH密码
    sshpass命令来自英文词组“SSHpassword”的缩写,其功能是用于非交互式验证SSH密码。SSH是Linux系统平台中最常用的远程控制协议之一,使用ssh命令进行远程连接时需要交换式验证密码信息,不利于在Shell脚本中调用。而sshpass命令则很好地解决了这个脚本调用问题,用户可以直接将密码以参......
  • Linux 下普通用户不通过 sudo 使用 docker 命令
    Linux环境下普通用户没有执行docker命令的权限是因为Docker的安全设计。Docker守护进程(daemon)默认以root用户身份运行,因为它需要访问系统的底层资源来管理容器。出于安全考虑,普通用户(非root用户)不应该能够直接执行可能具有破坏性的Docker命令。但是,Docker提供了一种......
  • SpringBoot+Selenium模拟用户操作浏览器
    SeleniumSelenium是一个用于Web应用程序自动化测试的开源工具套件。它主要用于以下目的:浏览器自动化:Selenium能够模拟真实用户在不同浏览器(如Chrome、Firefox、IE/Edge等)中的交互行为,通过编程方式控制浏览器执行一系列操作,例如点击按钮、填写表单、导航页面等。兼容性测试:通过......