Java 为什么我能';是否不向数组中添加元素?

Java 为什么我能';是否不向数组中添加元素?,java,arrays,Java,Arrays,我正在做作业,老师让我们把100个学生的名字和成绩储存起来。并要求用户输入姓名和等级。代码中没有错误,但当我运行文件时,它只要求我输入一次名称。但是添加到grade数组没有这样的问题吗?什么会导致这种情况发生?应该做些什么才能输入姓名 public class Assignment12 { public static void main(String[] args) { Scanner input = new Scanner(System.in); int grade[] =

我正在做作业,老师让我们把100个学生的名字和成绩储存起来。并要求用户输入姓名和等级。代码中没有错误,但当我运行文件时,它只要求我输入一次名称。但是添加到grade数组没有这样的问题吗?什么会导致这种情况发生?应该做些什么才能输入姓名

public class Assignment12 {
  public static void main(String[] args) {
    Scanner input = new Scanner(System.in);
    int grade[] = new int[3];
    String name[] = new String[3];

    for (int i = 0; i < 3; i++) {
      System.out.println("Enter Student name");
      String studentName = input.nextLine();
      name[i] = studentName;

      System.out.println("Enter Student grade");
      int studentGrade = input.nextInt();
      grade[i] = studentGrade;
    }
  }
}
公共类分配12{
公共静态void main(字符串[]args){
扫描仪输入=新扫描仪(System.in);
整数等级[]=新整数[3];
字符串名称[]=新字符串[3];
对于(int i=0;i<3;i++){
System.out.println(“输入学生姓名”);
String studentName=input.nextLine();
姓名[i]=学生姓名;
System.out.println(“输入学生成绩”);
int studentGrade=input.nextInt();
等级[i]=学生等级;
}
}
}

您可以尝试下面的代码

Scanner scan = new Scanner(System.in);
int[] marks = new int[3];
String[] names = new String[3];
//input marks
for(int i = 0; i < 3; i++) {
        marks[i] = scan.nextInt();
}
//for Enter key character as input, in order to read the strings
scan.nextLine();
//loop to read names 
for(int i = 0; i < 3; i++) {
        names[i] = scan.nextLine();
}
//for printing out marks
for(int i = 0; i < 3; i++) {
    System.out.println(marks[i]);
}
//for printing out names
for(int i = 0; i < 3; i++) {
    System.out.println(names[i]);
}
Scanner scan=新的扫描仪(System.in);
int[]标记=新的int[3];
字符串[]名称=新字符串[3];
//输入标记
对于(int i=0;i<3;i++){
marks[i]=scan.nextInt();
}
//例如,输入键字符作为输入,以便读取字符串
scan.nextLine();
//循环读取名称
对于(int i=0;i<3;i++){
名称[i]=scan.nextLine();
}
//用于打印标记
对于(int i=0;i<3;i++){
系统输出打印LN(标记[i]);
}
//用于打印姓名
对于(int i=0;i<3;i++){
System.out.println(名称[i]);
}