import java.util.*;
public class Student {
    private String []  first;
    private String [] last;
    private String [] HKID;
    private String[] SID;
    private int []Exam;
    private int num;
    Scanner kb= new Scanner(System.in);

    public Student (String f, String l, String h, String s, int e, int n){
        System.out.println("Please enter number of students:");
        n =  kb.nextInt();
        for(int i=0;i >n; i++){
            System.out.println("First name:");
            f = kb.next();
            first = new String[f];
            System.out.println("Last name:");
            l=kb.next();
            last= new String[l];
            System.out.println("HKID:");
            h=kb.next();
            HKID=new String[h];
            System.out.println("SID:");
            s=kb.next();
            SID=new String [s];
            System.out.println("Final exam score:");
            e=kb.nextInt();
            Exam=new int [e];
    }

    public String[] getFirst(){return first;}
    public String [] getLast(){return last;}
    public String [] getHKID(){return HKID;}
    public String [] getSID(){return SID;}
    public int [] getExam(){return Exam;}
    public void setFirst(String [] f){f=first;}
    public void setLast(String [] l){l=last;}
    public void setHKID(String [] h){h=HKID;}
    public void setSID(String [] s){s= SID;}
    public void setExam(int [] e){e=Exam;}
}


我正在创建一个代码,该代码首先询问用户班上有多少学生。由此,它要求为每个学生输入几个详细信息,并存储在各自的数组中。问题:我不能在我的String数组中输入一个String变量。我想不出任何办法。请帮忙。

最佳答案

问题是:

    for(int i=0;i >n; i++)
    {
    }


写这个:

       for(int i=0;i <n; i++)
       {
       // your code
       }


您尚未初始化String数组。

 import java.util.*;

 class Student
 {
 private String []  first;
 private String [] last;
 private String [] HKID;
 private String[] SID;
 private int []Exam;
 private int num;
 Scanner kb= new Scanner(System.in);
 int n=0;
public Student (){

   System.out.println("Please enter number of students:");
     n =  kb.nextInt();
     first = new String[n];
     last= new String[n];
     HKID=new String[n];
     SID=new String [n];
     Exam=new int [n];

     for(int i=0;i <n; i++)
     {
        System.out.println("First name:");
        first[i]= kb.next();
        System.out.println("Last name:");
        last[i]=kb.next();
        System.out.println("HKID:");
        HKID[i]=kb.next();
        System.out.println("SID:");
        SID[i]=kb.next();
        System.out.println("Final exam score:");
        Exam[i]= kb.nextInt();
      }
  System.out.print("Student Detail");

  System.out.print("First Name \t Last Name \t HKID \t SID \t Final exam score \n " );

 for(int i=0;i<n;i++)
 {
    System.out.print(first[i]+"\t"+last[i]+"\t"+HKID[i]+"\t"+SID[i]+"\t"+Exam[i]);
    System.out.println();
   }
 }
public static void main (String[] args) {
    new Student();
  }
}

09-27 00:27
查看更多