【发布时间】:2021-07-11 02:41:07
【问题描述】:
Scanner scanner = new Scanner(System.in);
System.out.println("enter number :");
int number = scanner.nextInt();
System.out.println("Number is " + number);
让我一步一步解释我的理解,
Scanner scanner = new Scanner(System.in);
-
Scanner 是 java 内置类之一,它是我们可以使用它来读取用户输入的方式之一。
-
scanner 是我们创建的对象的标识符。
-
使用
new,我们创建对象的一个实例。 -
System.in帮助我们从控制台(键盘)获取输入System.out.println("输入号码:");
-
打印“输入号码:”。
int number =scanner.nextInt();
-
从console(keyboard)读取system.in的输入并将输入解析(convert)为int并将其存储在变量number中。
System.out.println("数字是" + 数字);
-
打印语句“数字是”+数字(输入存储在变量数字中));
这是我认为的模糊理解,我不确定自己的知识。
我的问题是;
-
Scanner 类用于读取用户输入,那么 System.in 也用于读取输入?不是吗?这将有助于解释这两个术语之间的明确区别吗?
-
当我们从控制台输入(输入)输入时,它会去哪里?到 System.in?
System.in 是否存储这些值?
- nextInt() 方法也用于读取输入?这个怎么运作?是否读取了 System.in 已经读取的输入,然后解析为 int?
扫描仪读取,System.in 读取,nextInt() 读取,一切都读取?我无法区分这些的工作原理?
【问题讨论】:
-
System.in代表控制台,Scanner代表可用于读取输入的东西,nextInt()只是一种让应用程序真正停止并等待获取输入的方法。这里唯一活跃的是触发所有这一切的nextInt()调用。