【发布时间】:2017-03-26 12:49:41
【问题描述】:
我试图声明一个新的扫描仪,它工作正常,但只在主扫描仪上。
当我编写方法时(当然不是主要的),它不会识别扫描仪。
import java.util.Scanner;
public class Exe1GenericSort {
public static void main(String[] args) {
Scanner input= new Scanner(System.in);
start();
int i = input.nextInt();
}//end main
在这里它工作正常,但在方法“开始”它不会让我使用“input.next ....”
试图写“扫描仪输入=新的扫描仪....上面的主要和仍然无法工作...
【问题讨论】:
-
你了解范围界定吗?如果你在 main 中创建一个 Scanner,它只能在 main 中使用,除非你将它作为参数传递给另一个方法。
-
是的..我知道..我用 c 编程了很长时间,现在又回到了 java,但我记得有一种方法可以以某种方式声明扫描仪,所以在 main 之外它仍然可以识别它,(试图声明公共扫描仪输入=新.....)仍然不好......
-
input变量已在 main 方法中声明,因此只能在 main 方法的范围内使用。 -
如果两个人在一个房间里谈话,如果你在另一个房间,你会期望知道对方在说什么吗?
-
@RoiZrihan Afaik,C 中的变量作用域与 Java 中的相同。
标签: java eclipse java.util.scanner