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

day03--Scanner用户交互

时间:2022-12-02 18:58:01浏览次数:64  
标签:Scanner day03 System next -- println 输入 scanner

用户交互Scanner对象

  • 基本语法

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

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.close();
  }
}

scanner.next()与scanner.nextLine()的区别

  • next():

    • 一定要督导有效字符才可以结束输入。

    • 对输入有效字符之前遇到的空白,next()方法会自动将其去掉。

    • 只有输入有效字符后才能将其后面输入的空白作为分隔符或者结束符。

    • next()不能得到带有空格的字符串。

  • nextLine():

    • 以Enter为结束符,也就是说nextLine()方法返回的是输入回车之前的所有字符。

    • 可以获得空白。

Scanner进阶

import java.util.Scanner;

public class Demo02 {
   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 if (scanner.hasNextFloat()) {
           f = scanner.nextFloat();
           System.out.println(f);

      } else {
           System.out.println("输入的数据类型有误!");
      }
  }
}
 

标签:Scanner,day03,System,next,--,println,输入,scanner
From: https://www.cnblogs.com/lgq0225/p/16945356.html

相关文章

  • vue 项目开发记录1
    ---------------------------jbs开发记录---------------------------1,新建vue-cli项目2,win7不能使用node14以上的版本 1,使用save会在package.json中自动添加。npmi......
  • sprint boot 接收 Form 表单数据
    这篇文章主要介绍了Springboot接收 Form 表单数据的实例代码,本文通过图文实例代码相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以......
  • 用设计模式来替代if-else(转)
    原文:https://www.cnblogs.com/DiDi516/p/11787257.html1、前言​ 物流行业中,通常会涉及到EDI报文(XML格式文件)传输和回执接收,每发送一份EDI报文,后续都会收到与之关联的......
  • 禁止Windows 10和Windows 11自动更新
    Windows10和Windows11的设置是不能禁止系统自动更新的(只能暂停7天)。 方法1右键计算机->管理->服务和应用程序->服务->打开WindowsUpdate服务->禁用 方......
  • [传智杯 #5 初赛] E-梅莉的市场经济学
    [传智杯#5初赛]E-梅莉的市场经济学题目背景梅莉这个学期选修了经济学。但是主修心理学的她实在不擅长经济领域的分析,为此她时常抱怨自己学不会,想退课。但是如果现在......
  • vue run build打包之后服务器端访问图片404
    记录:assetsRoot:path.resolve(__dirname,BUILD_RESOURCES_DIST),//打包后文件存放的路径assetsSubDirectory:"",//除了index.html之外的静态资源要存放的路径assets......
  • 前端CSS学习(二)
    目录边框画圆小例子displaydisplay属性盒子模型浮动溢出overflow溢出属性圆形头像示例定位fixedz-index顶部导航栏代码展示简易博客页面搭建边框<head><metacharse......
  • 前端 css
    目录今日内容概要今日内容详细边框display盒子模型浮动溢出定位z-index简易博客页面搭建今日内容概要边框盒子模型浮动定位补充说明简易博客页面搭建今日内容详......
  • vmware workstation SCSI磁盘格式虚拟机迁移到KVM之后无法启动的问题解决办法
    原文链接:https://blog.51cto.com/duron/2125821转换磁盘镜像格式之后导入KVM系统无法启动,但是可以进入恢复模式,可能是virtio的内核模块没有加载,把磁盘改为IDE模式后正常......
  • CentOS Linux 的安装
    CentOSLinux的安装作者:Grey原文地址:博客园:CentOSLinux的安装CSDN:CentOSLinux的安装说明本安装说明是基于Windows10下VMwareworkstation16安装Linux,Li......