Scanner用户交互
Scanner用户交互
Scanner对象
引入语法:
Scanner scanner=new Scanner(System.in);(固定的)
小写scanner为定义的名称
scanner.close();//需要关闭释放资源(固定的)
next();方法
一定要读取到有效字符才能结束
输入有效字符之前的空白(空格)自动去掉
输入有效字符之后的空格作为结束符,之后的内容不再接受
next();方法不能接受空格字符
hasNext();用来判断是否为空,是否符合我们所需要的。
nextLine();方法
以回车作为结束符,也就是说nextLine();方法返回的是输入回车之前的所有字符
可以获取空格
以上两种方法配合数据类型使用改变
例如想要获得的是整型数据
hasNextLine();同样用于判断输入的数据类型,是否为空等等
扩展:
包含了许多判断方法,hasNextInt(); hasNextFloat(); hasNextByte(); hasNextLong();
字符串直接用hasNext();和hasNextLine(); 这些与if()配合使用用来限定用户输入的数据是否符合需求。
通常放在赋值语句之前配合if()或while()使用。
1 import java.util.Scanner;
2 public class hehe {
3 public static void main(String[] args) {
4 System.out.println("输入整型数据!");
5 Scanner s=new Scanner(System.in);
6 if(s.hasNextInt()) //hasNextInt()非空为整数
7 int a=s.nextInt(); //nextInt();接受整型数据
8 System.out.println("得到的整型数据:"+a);
9
10 s.close(); //使用完毕就关闭,回收资源
11 }
12 }
13
字符串型数据直接使用next()或nextLine()即可
eg:
1 Scanner s=new Scanner(System.in);
2 string str=s.nextLine();
3 s.close();
4
Scanner用户交互的更多相关文章
- 用户交互Scanner的用法
Java用户交互的目的是实现程序与人的交互:一般通过Scanner来获取用户的输入:java.util.Scanner 是Java5的新特征. 基本语法: Scanner s=new 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 ...
- Linux常用命令学习4---(挂载命令mount umount、用户登陆查看和用户交互命令 w who last lastlog)
紧接着上一篇Linux的命令行的学习:Linux学习3---(文件的压缩和解压缩命令zip unzip tar.关机和重启命令shutdown reboot……) 1.挂载命令 简介 ...
- C# 通过服务启动窗体(把窗体添加到服务里)实现用户交互的windows服务[转发]
由于个人需要,想找一个键盘记录的程序,从网上下载了很多,多数都是需要注册的,另外也多被杀软查杀.于是决定自己写一个,如果作为一个windows应用程序,可以实现抓取键盘的记录.想要实现随系统启动的话, ...
- 用户交互与while循环<代码>
#用户交互1 age_oldboy = 56 guess_age = int(input(">>:")) if guess_age == age_oldboy: pri ...
- 4.python中的用户交互
学习完如何写'hello world'之后,我们还是不太满意,因为这样代码就写死了,以后运行的时候都只打印一局固定的话而已. 但是,我想在程序运行后,自己手动输入内容怎么办,此时就要学习如何使用用户交 ...
随机推荐
- 5.2 Spring5源码--Spring AOP源码分析二
目标: 1. 什么是AOP, 什么是AspectJ 2. 什么是Spring AOP 3. Spring AOP注解版实现原理 4. Spring AOP切面原理解析 一. 认识AOP及其使用 详见博 ...
- Mybatis执行流程学习之手写mybatis雏形
Mybatis是目前开发中最常用的一款基于ORM思想的半自动持久层框架,平时我们都仅仅停留在使用阶段,对mybatis是怎样运行的并不清楚,今天抽空找到一些资料自学了一波,自己写了一个mybatis的 ...
- linux 文件目录权限
文件目录权限: 什么是文件权限: 在Linux中,每个文件都有所属的所有者,和所有组,并且规定了文件的所有者,所有组以及其他人对文件的,可读,可写,可执行等权限. 对于目录的权限来说,可读是读取目录文 ...
- uni-app开发经验分享十: 封装request请求
http.js //封装requset,uploadFile和downloadFile请求,新增get和post请求方法 let http = { 'setBaseUrl': (url) => ...
- top命令详解-性能分析
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,常用于服务端性能分析. top命令说明 [www.linuxidc.com@linuxidc-t-tomcat-1 ...
- rehash (重新散列)
rehash - Redis 设计与实现 http://redisbook.com/preview/dict/rehashing.html
- shell命令分隔符 二叉树结构的命令行树
shell命令分隔符 二叉树结构的命令行树 I ;&
- Python程序中#-*-coding: UTF-8 -*-的作用
1.通常我们在pycharm中写程序的时候会加上#-*coding: UTF-8 -*- 如: #!/usr/bin/env python3#-*-coding: UTF-8 -*-#Author x ...
- luoguP4999 烦人的数学作业
写在前面 这两天信息量有点大,需要好好消化一下,呼呼 \(f[i][j]\) 的转移式还是好理解的,但是对于其实际意义课上有点糊 求 \(ans_{1, x}\) 是感觉手动把数拆开看会好理解一点?? ...
- 常用shell命令及其用法
ls(lsit) 1.作用:列出文件列表 2.用法:ls [-a|-A--] [filename|directory] ls ls -a:查看隐藏文件 ls -l:查看文件详细信息 ...