扫描仪输入 = 新扫描仪(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类的新对象(因此您创建了一个新的"扫描仪"(,并将其存储在变量input中。同时,您正在使用参数 System.in 调用类的(所谓的(构造函数。这意味着它将从程序的标准输入流中读取。

现在,当您调用input.nextInt();时,您可以从刚刚创建的对象(也记录(执行该方法。但是正如我们所看到的,这个方法返回一个整数,所以如果我们想使用该整数,我们必须像你一样将调用分配给一个变量:

int i = input.nextInt();

Scanner input = new Scanner(System.in);创建一个新的Scanner实例,该实例指向作为参数传递的输入流。在您的情况下,蒸汽是标准输入流

因此,一旦您的扫描程序实例指向它,您就可以扫描流并获取 integersstrings 并执行其他操作。

Scanner input = new Scanner(System.in);

从程序的标准输入(在本例中可能是控制台(创建类型 Scanner 的新对象和

int i = input.nextInt()

使用该对象的nextInt方法,该方法允许您输入一些文本,然后将其解析为整数。

Scanner s = new Scanner(System.in);

上面的语句创建了一个Scanner类的对象,该对象在包java.util.scanner中定义。 Scanner类允许用户从控制台获取输入。

System.in作为类Scanner参数传递。它告诉java编译器系统输入将通过控制台(键盘(提供。

扫描仪输入 = 新扫描仪(System.in(;它创建一个新的 Scanner 实例,该实例指向作为参数传递的输入流。所以这里的蒸汽是标准输入流。

因此,一旦您的 scanner 实例指向它,您就可以扫描流并将值存储为整数、字符串并执行其他操作

相关内容

  • 没有找到相关文章

最新更新