java中Scanner的next系列方法工作原理?
发布网友
发布时间:2022-04-23 01:48
我来回答
共2个回答
热心网友
时间:2023-09-11 04:04
scanner可以允许输入多行,
next() 每次取到一个间隔符前面的数据 如: 输入 a b c 取值应该是a,因为a后面有空格
nextLine() 每次取一个换行符前面的数据 如:输入 a b c 回车,取值 就是a b c
nextInt() 是取next() 然后把字符串解析成一个int数字。
hasNextInt() 是判断下次调用next()是否可以得到一个可以安全解析成int的字符串。如果已经到达输入的结尾,或者下一个next()的返回值不能解析为一个数字,即不符合数字的格式,那么返回发false
热心网友
时间:2023-09-11 04:05
因为Scanner方法可以是多行的输入,之后回车进行确认结束,所以出现了不同的next方法:
next是只读取一个字符串,之后顺序的进行读取,nextLine是一行一行的读取,除此之外,nextInt是读取一个数值,nextDoubl是读取一个浮点类型的输入。举例:
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
String length=input.next();//输入一个字符串,之后进行回车确认输入
System.out.println("输入的字符串是:"+length);}
}
备注:上面举例的是字符串,之后进行单个字符读取;也可以用以下语句“String length=input.nextLine()”,读取的就是一行(“\n”是换行符,碰到之后就会认为是读取下一行)。