首页 > 解决方案 > 为什么我不能向数组添加元素?

问题描述

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

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;
    }
  }
}

标签: javaarrays

解决方案


您可以在下面尝试此代码。

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]);
}

推荐阅读