web-dev-qa-db-ja.com

複数のスキャナー入力を読み取る

私がやろうとしていることは、すべてが異なる変数を持つ複数の入力を持つことです。各変数は異なる方程式の一部になります。私はこれを行う方法を探しています、そして私は考えを持っていると思います。これが合法であるかどうか、そしておそらくこれを行うより良い方法があるかどうかを知りたいだけです。

import Java.util.*;

public class Example{

public static void main(String args[]){

    Scanner dd = new Scanner(System.in);

    System.out.println("Enter number.");
    int a = dd.nextInt();
    System.out.println("Enter number.");
    int b = dd.nextInt();
    System.out.println("Enter number.");
    int c = dd.nextInt();
  }
}
5
John

すべての入力が同じ質問をする場合は、forループと入力の配列を使用する必要があります。

Scanner dd = new Scanner(System.in);
int[] vars = new int[3];

for(int i = 0; i < vars.length; i++) {
  System.out.println("Enter next var: ");
  vars[i] = dd.nextInt();
}

または、Chipが示唆するように、1行から入力を解析できます。

Scanner in = new Scanner(System.in);
int[] vars = new int[3];

System.out.println("Enter "+vars.length+" vars: ");
for(int i = 0; i < vars.length; i++)
  vars[i] = in.nextInt();

あなたは正しい軌道に乗っていて、あなたがしたことはうまくいきました。これは、より適切で柔軟な方法です。

14
Jon Egeland