扫描仪输入=新的Scanner(System.in)实际上是什么意思?
Scanner input = new Scanner(System.in);
您能否详细解释上面的代码在做什么?我不太了解它是如何工作的,以及以后如何执行此语句,它如何链接到我:
int i = input.nextInt()
回答:
好了,让我们详细说明一下Scanner
该类。
这是一个标准的Oracle类,您可以通过调用来使用import java.util.Scanner
。
因此,让我们为该类做一个基本的例子:
class Scanner{ InputStream source;
Scanner(InputStream src){
this.source = src;
}
int nextInt(){
int nextInteger;
//Scans the next token of the input as an int from the source.
return nextInteger;
}
}
现在,当您调用时Scanner input = new Scanner(System.in);
,将创建Scanner
该类的新对象(因此,将创建新的“
Scanner”)并将其存储在变量中input
。同时,您使用参数调用类的(所谓的)构造函数System.in
。这意味着它将从程序的标准输入流中读取。
现在,当您调用时,您可以input.nextInt();
从刚刚创建的对象(也已记录)中执行该方法。但是,正如我们所看到的,此方法返回一个整数,因此,如果要使用该整数,则必须像您一样将调用分配给变量:
int i = input.nextInt();
以上是 扫描仪输入=新的Scanner(System.in)实际上是什么意思? 的全部内容, 来源链接: utcz.com/qa/417837.html