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 ...
随机推荐
- Maven项目中resources配置总结
目录 背景 第一部分 基本配置介绍 第二部分 具体配置和注意事项 第三部分 读取resources资源 参考文献及资料 背景 通常Maven项目的文件目录结构如下: # Maven项目的标准目录结构 ...
- 学习笔记-angular 使用uuid
import { UUID } from 'angular2-uuid'; let uuid = UUID.UUID().replace(/-/g, '').toLocaleUpperCase(); ...
- 如何获取canvas当前的缩放值
项目中一直有一个问题困扰着我,我们的画布可以缩放平移旋转,支持拖拽生成图形,生成手写笔迹,如果用户选择的线条粗细为5像素,那么即使画布缩放过绘制出的线条粗细也应该是视觉上的5px,所以再绘制时赋值给c ...
- Dynamics Crm Plugin插件注册的问题及解决方案(持续更新。。。。。。)
1.注册插件的时候回遇到如下提示 Plug-in assembly does not contain the required types or assembly content cannot be ...
- 简介TLS 1.3
0x00 前言 最近在阅读论文,其中阅读了 WWW2021的一篇文章"TLS 1.3 in Practice: How TLS 1.3 Contributes to the Internet ...
- 《图解HTTP》部分章节学习笔记整理
简介 此笔记为<图解HTTP>中部分章节的学习笔记. 目录 第1章 了解Web及网络基础 第2章 简单的HTTP协议 第4章 返回结果的HTTP状态码 第7章 确保web安全的HTTPS
- ambari介绍及安装
Ambari简介 Ambari概述 Apache Ambari是一种基于Web的工具,支持Apache Hadoop集群的创建.管理和监控.Ambari已支持大多数Hadoop组件,包括HDFS.Ma ...
- VsCode调试vue项目
VsCode调试vue项目 VsCode如何调试vue项目,VsCode需要安装插件以及配置launch.json文件. 找到"扩展"或者按快捷键"Ctrl+Shift+ ...
- 在nginx配置将请求转发到某个真实后端服务ip
一.打开nginx机器的nginx配置文件 命令: locate nginx.conf 会列出所有nginx.conf文件的地址, 一般咱们要用的nginx配置文件是/usr/local/nginx/ ...
- LinqToObject和LinqToSql的区别
抓住五一假期尾巴和小伙伴们一起分享这两者的区别.大家在日常编码的过程当中肯定也注意过或者使用过.但是二者其实存在本质的区别 1.什么是LinqToObject呢? LINQ to Objects指直接 ...