java基础——Scanner的基础和进阶
Scanner对象
目的;用来获取用户的输入
基本语法:
Scanner s = new scanner (System.in);
通过Scanner 类的next()和nextLine()方法,获取输入的字符串,
在读取前我们一般需要使用hasNext()与hasNextLine()判断是否还有输入的数据。
next():
一定要读取到有效字符后才可以可以结束输入
对输入有效字符之前遇到的空白,next()方法都会自动过滤掉
只有输入有效字符之后,才将其后面输入的空白作为分隔符,或者结束符号
结论:next()不能得到带有空格的字符串
nextLine():
以Enter作为结束符,也就是说nextLine()方法返回的是输入回车之前的所有字符
可以获得中间的空白字符。
    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();
    }
    public static void main(String[] args) {
        //创建一个扫描对象,用于接受键盘数据
        Scanner scanner = new Scanner(System.in);
        System.out.println("使用nextline方式接受:");
        //判断用户有没有输入字符串
        if (scanner.hasNextLine()){
            //使用nextLine接受数据
            String str = scanner.nextLine();
            System.out.println("使用nextline方式接受的内容:"+str);
        }
        // 凡是属于IO流的类, 在使用往后,必须要关闭
        scanner.close();
    }
    public static void main(String[] args) {
        // 建立一个扫描对象,用于接受键盘输入数据
        Scanner scanner = new Scanner(System.in);
        System.out.println("等待用户输入:");
        //创建一个变量,用于储存键盘输入的数据
        String str = scanner.next();
        System.out.println("你输入的数据是:"+str);
        //凡是IO流的类,都必须用完关闭
        scanner.close();
    }
Scanner进阶
    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.hasNextFloat()){
            f = scanner.nextFloat();
            System.out.println("你输入的小数是"+f);
        }else{
            System.out.println("你输入的数据不是小数");
        }
        scanner.close();
    }  
    public static void main(String[] args) {
        // 我们可以输入多个数字,并求其总和与平均数,每输入一个数字用回车确认,通过输入非数字来结束输入并输出执行结果
        Scanner scanner = new Scanner(System.in);
        //和变量
        double sum = 0;
        //统计个数变量
        int m =0;
        //判断循环是否还有输入,并对每一次输入进行记述和求和
        System.out.println("请输入数据");
        while(scanner.hasNextDouble()){
            double x = scanner.nextDouble();
            m++;
            sum+=x;
            System.out.println("你输入了第"+m+"个数据");
        }
        System.out.println("输入的个数:"+ m);
        System.out.println("总和为:"+ sum);
        System.out.println("平均数:"+ (sum/m));
    }												
											java基础——Scanner的基础和进阶的更多相关文章
- Java基础 Scanner 使用nextInt接收整数
		
JDK :OpenJDK-11 OS :CentOS 7.6.1810 IDE :Eclipse 2019‑03 typesetting :Markdown code ...
 - Java基础 Scanner 使用nextLine接收字符串
		
JDK :OpenJDK-11 OS :CentOS 7.6.1810 IDE :Eclipse 2019‑03 typesetting :Markdown code ...
 - Java 教程整理:基础、项目全都有
		
Java 在编程语言排行榜中一直位列前排,可知 Java 语言的受欢迎程度了. 网上有很多 Java 教程,无论是基础入门还是开发小项目的教程都比比皆是,可是系统的很少,对于Java 学习者来说找到系 ...
 - #Java学习之路——基础阶段(第七篇)
		
我的学习阶段是跟着CZBK黑马的双源课程,学习目标以及博客是为了审查自己的学习情况,毕竟看一遍,敲一遍,和自己归纳总结一遍有着很大的区别,在此期间我会参杂Java疯狂讲义(第四版)里面的内容. 前言: ...
 - Java实现蓝桥杯基础练习特殊回文数
		
基础练习 特殊回文数 时间限制:1.0s 内存限制:512.0MB 提交此题 锦囊1 锦囊2 问题描述 123321是一个非常特殊的数,它从左边读和从右边读是一样的. 输入一个正整数n, 编程求所有这 ...
 - Java实现 蓝桥杯 基础练习 闰年判断
		
基础练习 闰年判断 时间限制:1.0s 内存限制:256.0MB 提交此题 锦囊1 锦囊2 问题描述 给定一个年份,判断这一年是不是闰年. 当以下情况之一满足时,这一年是闰年: 年份是4的倍数而不是1 ...
 - Java实现 蓝桥杯 基础练习 字母图形
		
基础练习 字母图形 时间限制:1.0s 内存限制:256.0MB 提交此题 锦囊1 锦囊2 问题描述 利用字母可以组成一些美丽的图形,下面给出了一个例子: ABCDEFG BABCDEF CBABCD ...
 - Java实现 蓝桥杯 基础练习 数列特征
		
基础练习 数列特征 时间限制:1.0s 内存限制:256.0MB 提交此题 锦囊1 锦囊2 问题描述 给出n个数,找出这n个数的最大值,最小值,和. 输入格式 第一行为整数n,表示数的个数. 第二行有 ...
 - Java实现 蓝桥杯 基础练习 查找整数
		
基础练习 查找整数 时间限制:1.0s 内存限制:256.0MB 提交此题 锦囊1 锦囊2 问题描述 给出一个包含n个整数的数列,问整数a在数列中的第一次出现是第几个. 输入格式 第一行包含一个整数n ...
 
随机推荐
- 翻译:《实用的Python编程》07_04_Function_decorators
			
目录 | 上一节 (7.3 返回函数) | 下一节 (7.5 装饰方法) 7.4 函数装饰器 本节介绍装饰器(decorator).因为这是一个高级主题,所以我们只做简单介绍. 译注:根据译者个人的猜 ...
 - OO UNIT 2 个人总结
			
第二单元面向对象作业--性感电梯在线吃人 Part 1:单部可捎带电梯 多线程设计策略 本次电梯仅仅只有一部运行,因此,在多线程的设计中难度不大,并且,只需采用一对一的生产者-消费者模型即可解决问题. ...
 - pandas(3):索引Index/MultiIndex
			
目录 一.索引概念 二.创建索引 ①导入数据时指定索引 ②导入数据后指定索引df.set_index() 三.常用的索引属性 四.常用索引方法 五.索引重置reset_index() 六.修改索引值( ...
 - 【笔记】《算法竞赛入门》习题7-6 UVa12113_重叠的正方形
			
title: 习题7-6 UVa12113_重叠的正方形 date: 2021-01-31 19:08:00 categories: 算法竞赛入门 tags: 数据结构 算法 UVa <算法竞赛 ...
 - 痞子衡嵌入式:在i.MXRT启动头FDCB里使能串行NOR Flash的DTR模式
			
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是在FDCB里使能串行NOR Flash的DTR模式. 前两篇文章 <IS25WP系列Dummy Cycle设置> 与 < ...
 - 浅入Kubernetes(12):Deployment 的升级、回滚
			
目录 更新 上线 会滚 缩放 Deployment 直接设置 Pod 水平自动缩放 比例缩放 暂停 Deployment 上线 本篇内容讨论 Pod 的更新和回滚,内容不多. 更新 打开 https: ...
 - Dynamics CRM实体系列之键
			
这一节开始讲一下Dynamics CRM实体的键.键的作用个我们平时创建Primary Key的概念差不多.保证数据的唯一性. 键的设置在后台实体导航下面的键选项 点击新建创建一个键,会弹出一个窗口进 ...
 - vue 进阶学习(一): vue 框架说明和与其他框架的对比
			
vue 框架说明和与其他框架的对比 一.说明 是一套用于构建用户界面的渐进式框架.与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用.Vue 的核心库只关注视图层,不仅易于上手,还便于与第三 ...
 - 【SpringBoot】SpringBoot2.x整合定时任务和异步任务处理
			
SpringBoot2.x整合定时任务和异步任务处理 一.项目环境 springboot2.x本身已经集成了定时任务模块和异步任务,可以直接使用 二.springboot常用定时任务配置 1.在启动类 ...
 - DVWA之Command Injection
			
Command Injection Command Injection,即命令注入,是指通过提交恶意构造的参数破坏命令语句结构,从而达到执行恶意命令的目的.PHP命令注入攻击漏洞是PHP应用程序中常见 ...