用户交互Scanner的用法
Java用户交互的目的是实现程序与人的交互;一般通过Scanner来获取用户的输入;java.util.Scanner 是Java5的新特征。
基本语法:
Scanner s=new Scanner(System.in);
我们可以通过Scanner类的next()与nextLine()方法获取用户输入的数据,而在获取之前可以通过hasNext()与hasNextLine判断是否有输入的数据。
代码1:
Scanner scanner =new Scanner(System.in); //创建一个扫描器对象,用于接收键盘数据
System.out.println("请输入数据:");
if(scanner.hasNext()){ //判断用户有没有输入字符串
String str=scanner.next(); //使用next()方法接收
System.out.println(str); //运行程序时,如果我们输入Hello World! 结果会是Hello
}
scanner.close(); //属于IO流的类, 如果不关闭会一直占用资源,所以用完要关闭
代码2:
Scanner scanner =new Scanner(System.in); //创建一个扫描器对象,用于接收键盘数据
System.out.println("请输入数据:");
if(Scanner.hasNextLine()){ //判断用户有没有输入字符串
String str=scanner.nextLine(); //使用nextLine()方法接收
Syste.out.println(str); ////运行程序时,如果我们输入Hello World! 结果会是Hello World!
}
scanner.close(); //属于IO流的类, 如果不关闭会一直占用资源,所以用完要关闭
由代码的输出结果就可知道next()与nextLine()的输出结果是有很大区别的
总结:
next():
1、一定要读取到有效字符后才可以结束输入。即程序运行时一定要输入有效字符才行
2、对输入有效字符之前遇到的空白,会自动忽略
3、当检测到有效字符时,才会把其后面输入的空白作为分离符或者结束符。
4、next()不能得到带有空格的字符串,即输入hello world 得到的只有hello。
nextLine():
1、以Enter为结束符,也就是说nextLine()方法返回的是输入回车之前的所有字符,所以能输出hello world!
2、可以获得空白
结论:next()方法比较局限,nextLine()用途比较广一些。
Scanner拓展:
上面的是判断用户是否输入字符串,那小数和整数呢?
小数:hasNextFloat() nextFloat()
整数:hasNextInt() nextInt()
问键盘输入几个数,且这些数的和是:
代码:
Scanner scanner=new Scanner(System,in);
int m=0;
double sum=0;
while(scanner.hasNextDouble()){
double x=scanner.nextDouble();
m=m+1; //多少个
sum+=x; //它们的和
}
scanner.close();
用户交互Scanner的用法的更多相关文章
- 1.用户交互Scanner
Java流程控制 一:用户交互Scanner Scanner对象: 之前我们学的基本语法中我们并没有实现程序和人的交互,但是Java给我们提供了这样一个工具类,我们可以获取用户的输入.java.uti ...
- 用户交互Scanner
用户交互Scanner java.util.Scanner Scanner类可以获取用户的输入. Java 5 通过Scanner类的next()和nextLine()方法获取输入的字符串 在读取前我 ...
- 第4天 JavaDoc生成文档&Java流程控制(第一节:用户交互Scanner)
JavaDoc生成文档 javadoc命令是用来生成自己的API文档 参数信息: @author 作者名 @version 版本号 @since 指明需要最早使用的jdk版本 @param 参数名 @ ...
- Java流程控制01——用户交互Scanner
用户交互Scanner sacnner对象 之前的语法并没有实现程序与人的交互.java.util.Scanner是Java5的新特征,我们可以通过Scanner类来获取用户的输入. 基本语法: S ...
- Java基础系列(15)- 用户交互Scanner
Scanner对象 之前我们学的基本语法中我们并没有实现程序和人的交互,但是Java给我们提供了这样一个工具类,我们可以获取用户的输入.java.util.Scanner是Java5的新特征.我们可以 ...
- Java流程控制01:用户交互Scanner
Scanner对象 之前我们学习的基本语法并没有实现程序和人的交互,但是Java给我们提供了这样一个工具类,我们可以获取用户的输入.java.Scanner 是java5 的新特征,我们可以通过Sca ...
- Java流程控制:用户交互Scanner
java.util.Scanner工具类获取用户输入语法:Scanner scanner = new Scanner(System.in);通过Scanner类的next()与nextLine()方法 ...
- Scanner用户交互
Scanner用户交互 Scanner对象 引入语法: Scanner scanner=new Scanner(System.in);(固定的) 小写scanner为定义的名称 scanner.clo ...
- 用户数据交互 Scanner
# 用户交互 Scanner ``` java package study5ran2yl.study; import java.util.Scanner; public class demo09 { ...
随机推荐
- 1.Python爬虫入门_urllib
#2019-11-22 import urllib.request #Pthon自带的网络连接库 import gzip #解压缩库 #程序入口 if __name__=='__main__': #u ...
- redis入门与应用
本章涵盖: Redis 概述 Redis的优势 Redis的应用场景 安装与启动 基本数据类型 sort set特性 (1)redis的概述 在我们日常的Java Web开发中,无不都是使用数据库来进 ...
- GET POST 区分
get传送的数据量较小,不能大于2KB.post传送的数据量较大,一般被默认为不受限制.但理论上,IIS4中最大量为80KB,IIS5中为100KB. get安全性非常低,get设计成传输数据,一般都 ...
- Jenkins配置:添加用户和管理权限
Jenkins配置:添加用户和管理权限 参考文章:http://www.cnblogs.com/zz0412/p/jenkins_jj_14.html 今天给大家说说使用Jenkins专有用户数据库的 ...
- zz阿里妈妈深度树检索技术(TDM)及应用框架的探索实践
分享嘉宾:何杰 阿里妈妈 高级算法专家 编辑整理:孙锴 内容来源:DataFun AI Talk 出品社区:DataFun 注:欢迎转载,转载请注明出处 导读:阿里妈妈是阿里巴巴集团旗下数字营销的大中 ...
- LG2375/LOJ2246 「NOI2014」动物园 KMP改造
问题描述 LG2375 LOJ2246 题解 看了题解,需要回看,需要继续通过本题深入理解KMP. 为了将 \(\mathrm{KMP}\) 和只插入了一个模式串的\(\mathrm{AC}\)自动机 ...
- 关于XSS攻击
1.XSS XSS(Cross Site Scripting)攻击全称跨站脚本攻击,为了不与CSS(Cascading Style Sheets)混淆,故将跨站脚本攻击缩写为XSS,XSS是一种经常出 ...
- 深入理解Java8中Stream的实现原理
Stream Pipelines 前面我们已经学会如何使用Stream API,用起来真的很爽,但简洁的方法下面似乎隐藏着无尽的秘密,如此强大的API是如何实现的呢?比如Pipeline是怎么执行的, ...
- 解决 Github 图片加载慢的问题
一.前言 本文主要介绍一种解决 Github 图片加载慢的方法,亲测有效. 笔者博客是使用 Github 作为图床,每次打开博客时的图片加载很慢或者根本加载不出来.这是因为 GitHub 的 CDN ...
- Leetcode算法题 7. Reverse Integer2
7. Reverse Integer 题目描述: Given a 32-bit signed integer, reverse digits of an integer. Example 1: Inp ...