【牛客网机试题】Scanner中next()与nextLine()的区别和用法

本文介绍了Java Scanner类的基本概念,它结合了StringTokenizer和Matcher的功能,提供了一种扫描输入文本的新方式。文章指出,next()和nextLine()都是返回字符串的键盘输入方法,但它们在使用时有各自的限制。nextLine()前面不能有其他键盘输入方法,而next()不能接受空格和回车。此外,文章提到了这两个方法在实际使用中可能遇到的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Scanner类简介

Java 5添加了java.util.Scanner类,这是一个用于扫描输入文本的新的实用程序。它是以前的StringTokenizer和Matcher类之间的某种结合。由于任何数据都必须通过同一模式的捕获组检索或通过使用一个索引来检索文本的各个部分。于是可以结合使用正则表达式和从输入流中检索特定类型数据项的方法。这样,除了能使用正则表达式之外,Scanner类还可以任意地对字符串和基本类型(如int和double)的数据进行分析。借助于Scanner,可以针对任何要处理的文本内容编写自定义的语法分析器。

 

Scanner类是用于键盘输入,在使用的时候需要导入java.util.Scanner包。以下列举常用的几种键盘输入的方法:

方法描述
nextBoolean()将输入的下一个标记扫描为布尔值,并返回该值
nextByte()将输入的下一个标记扫描为byte
nextDouble()将输入的下一个标记扫描为double
nextFloat将输入的下一个标记扫描为float
nextInt()将输入的下一个标记扫描为int
nextLine()将此扫描仪推进到当前行并返回跳过的输入
nextLong()将输入的下一个标记扫描为long
nextShort()将输入的下一个标记扫描为short
next()查找并返回此扫描仪的下一个完整令牌

其中,next()和nextLine()的返回值都是string类型。两者在使用的时候会存在一下缺点:

nextLine()的缺点:
    1)nextLine()方法前面不能出现其他的键盘输入方法
    2)nextLine()方法前面可以有一个nextLine()方法
next()的缺点:
    不能接受空格和回车

 

延伸阅读:https://blog.youkuaiyun.com/basycia/article/details/51112278

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值