同様の質問が投稿された場合は申し訳ありませんが、見つかりませんでした。これが私のコードです:
import java.util.*;
public class InputArraysNextLine
{
static Scanner q = new Scanner(System.in);
public static void main(String[] args)
{
System.out.print("n = ");
int n = q.nextInt();
int[] a = new int[n];
String[] b = new String[n];
for (int i = 0; i < n; i++)
{
System.out.print("Enter student name: ");
b[i] = q.nextLine();
q.next();
System.out.print("Enter student number: ");
a[i] = q.nextInt();
}
for (int i : a)
System.out.print(i + " ");
System.out.println();
for (String j : b)
System.out.print(j + " ");
}
}
アレイaとbの両方をコンソールに表示するつもりでしたが、aだけが表示されています。nextLine()メソッドはこれと関係があると思います。コンソールに「学生名を入力してください:」と表示されたときに実際に何かを入力できたとしても、プログラムは入力をb文字列に保存しません。