入力として、間にスペースを入れた数字のセットである文字列があります。次に例を示します。
"30 129 48 29 110 90"
私がやりたいのは、最初に数値を文字列として格納する2番目の配列を使用せずに、その文字列を取得して整数として配列に入力することです。これは私が行う方法を知っていることです:
String line = input.nextLine();
String[] arr = line.split(" ");
int[] array = new int[arr.length];
for (int i = 0; i < arr.length; i++){
array[i] = Integer.parseInt(arr[i]);
}
仕事をするために2つの配列を作成したくないのですが、何らかの方法でforループで一度に実行したいのですが、それが私の目には良く、クリーンなコードを書くのが好きなので、そのようにしたいと思います。後で簡単に修正できます。
編集:jogabonitoの答えの後、これは私が何とかしたことです
Scanner input = new Scanner(System.in);
System.out.printf("Input: ");
StringTokenizer line = new StringTokenizer(input.nextLine());
int[] numbers = new int[line.countTokens()];
for (int i = 0; line.hasMoreTokens(); i++){
numbers[i] = Integer.parseInt((String)line.nextElement());
}