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 ...
随机推荐
- 闲来无事,在微信推文中看到一个炫酷的具有动态特效的中国地图,是用R语言做的,于是尝试了一下
目录 最终的效果图如下: 1.环境准备 2.需要安装的包: 3.进一步配置: end 最终的效果图如下: 1.环境准备 既然是用R语言作图,那么这几个软件是一定需要安装的: R语言的编译器:https ...
- Android控件 之 TextClock & AnalogClock(模拟时钟)
TextClock •简介 关于时间的文本显示,Android 提供了 DigitalClock 和 TextClock. DigitalClock是Android第1版本发布,功能很简单,只显示时间 ...
- golang 性能优化分析:benchmark 结合 pprof
前面 2 篇 golang 性能优化分析系列文章: golang 性能优化分析工具 pprof (上) golang 性能优化分析工具 pprof (下) 一.基准测试 benchmark 简介 在 ...
- markdown快捷输入
标题: 输入方式:#+空格+标题名,几级标题就敲几个# 注:最大支持六级标题 字体 加粗:在要加粗的字体前后加** 斜体:在要倾斜的字体前后加* 斜体加粗:在要倾斜并加粗的字体前后加*** 删除线:在 ...
- 详解php中函数的引用传递和返回 (附代码)
本篇文章带大家了解一下php的引用,详细介绍一下函数的引用传递和引用返回.有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助.php的引用(就是在变量或者函数.对象等前面加上&符号 ...
- Nginx错误日志(error_log)配置及信息详解
Nginx错误日志信息介绍 Nginx的错误信息是调试Nginx服务的重要手段,属于核心功能模块(ngx_core_module)的参数,该参数的名字为error_log,可以放在Main区块中全局配 ...
- ICMP主机探测过程
#1from scapy.all import * from random import randint from optparse import OptionParser #2 对用户输入的参数进行 ...
- 【面试技巧】老生常谈之 n 种使用 CSS 实现三角形的技巧
在一些面经中,经常能看到有关 CSS 的题目都会有一道如何使用 CSS 绘制三角形,而常见的回答通常也只有使用 border 进行绘制一种方法. 而 CSS 发展到今天,其实有很多有意思的仅仅使用 C ...
- Kubernetes部署metrics-server提示健康检测报错500,简单解决方式
为什么写? 最近有项目要用到HPA(Horizontal Pod Autoscaler)依赖了k8s的 metrics 指标才能做出自动缩扩容的动作,我这边用官方GitHub v0.4.2版本启动不起 ...
- GO-02-helloworld
package main /** package main表示一个可独立执行的程序,每个Go应用程序都需要包含一个名为main的包, 并且该包包含一个叫main()的函数(该函数是Go可执行程序的执行 ...