博客
关于我
JAVA流程控制01——用户交互Scanner和scanner的进阶使用
阅读量:250 次
发布时间:2019-03-01

本文共 506 字,大约阅读时间需要 1 分钟。

JAVA流程控制——用户交互Scanner和scanner的进阶使用

Scanner对象

通过Scanner类的next()与nextLine()获取输入的字符串,在读取前我们一般需要使用hasNext()与hasNextLine()判断是否还有输入的数据

next()与nextLine()的区别

next():

  • 一定要读取到有效字符才可以结束输入
  • 对输入有效字符之前遇到的空白,next()方法会自动将其去掉
  • 只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符
  • next()不能得到带有空格的字符串

在这里插入图片描述

在这里插入图片描述

nextLine():

  • 以Enter为结束符,也就是说nextLine()放发返回的是输入回车

之前的所有字符

  • 可以获得空白

在这里插入图片描述

在这里插入图片描述

注意:凡是属于IO(输入输出)流的类如果不关闭会一直占用资源,要要用完就关掉。列如scanner类,使用完后要关闭scanner.close();

拓展:不加判断直接使用scanner类来获取输入的字符

在这里插入图片描述

Scanner的进阶使用

输入一个数判断输入的是整数还是小数

在这里插入图片描述

我们可以输入多个数字,并且求其总和与平均数,每输入一个数字用回车确认,通过输入非数字来结束并输出执行结果:

在这里插入图片描述

转载地址:http://oqov.baihongyu.com/

你可能感兴趣的文章
【Flink】Flink 2023 Flink易用性和稳定性在Shopee的优化-视频笔记
查看>>
Netty5.x 和3.x、4.x的区别及注意事项(官方翻译)
查看>>
netty——bytebuf的创建、内存分配与池化、组成、扩容规则、写入读取、内存回收、零拷贝
查看>>
netty——Channl的常用方法、ChannelFuture、CloseFuture
查看>>
netty——EventLoop概念、处理普通任务定时任务、处理io事件、EventLoopGroup
查看>>
netty——Future和Promise的使用 线程间的通信
查看>>
netty——Handler和pipeline
查看>>
Vue输出HTML
查看>>
netty——黏包半包的解决方案、滑动窗口的概念
查看>>
Netty中Http客户端、服务端的编解码器
查看>>
Netty中使用WebSocket实现服务端与客户端的长连接通信发送消息
查看>>
Netty中实现多客户端连接与通信-以实现聊天室群聊功能为例(附代码下载)
查看>>
Netty中的组件是怎么交互的?
查看>>
Netty中集成Protobuf实现Java对象数据传递
查看>>
netty之 定长数据流处理数据粘包问题
查看>>
Netty事件注册机制深入解析
查看>>
netty代理
查看>>
Netty入门使用
查看>>
netty入门,入门代码执行流程,netty主要组件的理解
查看>>
Netty原理分析及实战(一)-同步阻塞模型(BIO)
查看>>