0
私はそれをcontaingクラスのmain()内の他の方法で宣言しmain()で宣言されているキーボード入力を、それを含むクラスの他のメソッドで使う方法?
Scanner stdin = new Scanner(System.in); //Keyboard input
を使用するかどうかはわかりません。私は "標準を解決することはできません"を取得します。
私はそれをcontaingクラスのmain()内の他の方法で宣言しmain()で宣言されているキーボード入力を、それを含むクラスの他のメソッドで使う方法?
Scanner stdin = new Scanner(System.in); //Keyboard input
を使用するかどうかはわかりません。私は "標準を解決することはできません"を取得します。
variable scopeについて学ぶ必要があります(Java Tutorial、another on variable scopeへのリンクがあります)。
他のメソッドでその変数を使用するには、他のメソッドへの参照を渡す必要があります。
public static void main(String[] args)
{
Scanner stdin = new Scanner(System.in); // define a local variable ...
foo(stdin); // ... and pass it to the method
}
private static void foo(Scanner stdin)
{
String s = stdin.next(); // use the method parameter
}
代わりに、静的フィールドとしてスキャナを宣言することができます:
public class TheExample
{
private static Scanner stdin;
public static void main(String[] args)
{
stdin = new Scanner(System.in); // assign the static field ...
foo(); // ... then just invoke foo without parameters
}
private static void foo()
{
String s = stdin.next(); // use the static field
}
}