-3

Java プロジェクトの宿題に問題があります。このプログラムでは、ケース 1 を使用すると、学生の記録システムがアクティブになります。メソッドを使用して、この記録システムをすべて作成する必要があります。試しましたが失敗しました。情報を配列に記録するメソッドの書き方を教えてもらえますか? どうもありがとう 。

//===========================================values
String[] name = new String [100];
String[] gender = new String [100];
String[] studentNo = new String [100];
Double[] gpa = new Double [100];
int menu = 0;
int accountNumber = 0;

//===========================================
menu = in.nextInt();
switch (menu) 
case 1:  {
System.out.println("** Recording a new student");
System.out.println("*** Please use lower case");
in.nextLine(); // for solve skipping 

System.out.print("Enter Student Name and Surname: ");
name[accountNumber] = in.nextLine();

System.out.print("Enter Student Gender(m/f): ");
gender[accountNumber] = in.nextLine();

System.out.print("Enter Student Number: ");
studentNo[accountNumber] = in.nextLine();

System.out.print("Enter Student GPA: ");
gpa[accountNumber] = in.nextDouble();

accountNumber++;


System.out.println("New Student Recorded. There are ["+accountNumber+"] students in system.");
System.out.println("");
}break;
4

1 に答える 1

-1

さて、私は人々があなたの宿題をすることに同意します、あなたが知っている必要があるメソッドを使用するには、コードを分離する必要があります、「分割して征服する」プロジェクトを提出したので、解決策はこの方法である可能性があります(もちろん配列を使用して) 、情報を保存するために Bean または dto を使用していたでしょうが、配列を使用する必要があるかもしれません。

public class DoYourHomework {

    String[] name = new String[100];
    String[] gender = new String[100];
    String[] studentNo = new String[100];
    Double[] gpa = new Double[100];
    int menu = 0;
    int accountNumber = 0;

    public DoYourHomework() {
        Scanner in = new Scanner(System.in);
        menu = in.nextInt();
        switch (menu) {
        case 1:  {
        System.out.println("** Recording a new student");
        System.out.println("*** Please use lower case");
        in.nextLine(); // for solve skipping 

        String name = null;
        String number = null;
        String gender = null;
        double gpa = -1;

        System.out.print("Enter Student Name and Surname: ");
        name = in.nextLine();

        System.out.print("Enter Student Gender(m/f): ");
        gender = in.nextLine();

        System.out.print("Enter Student Number: ");
        number = in.nextLine();

        System.out.print("Enter Student GPA: ");
        gpa = in.nextDouble();

        registerNewStudent(name, gender, number, gpa);
        accountNumber++;


        System.out.println("New Student Recorded. There are ["+accountNumber+"] students in system.");
        System.out.println("");
        }
        }

    }

    private void registerNewStudent(String name2, String gender2,
            String number, double gpa2) {
        name[accountNumber] = name2;
        gender[accountNumber] = gender2;
        studentNo[accountNumber] = number;
        gpa[accountNumber] = gpa2;
    }

    public static void main(String[] args) {
        new DoYourHomework();
    }

}

次の演習の理解に役立つことを願っています。たぶん、プラスとして、同じ学生番号を避けるために検証を追加したり、「変更と削除」などの次の操作を自分で実行しようとしたりすることができます。よろしくお願いします。

于 2013-05-08T19:52:40.667 に答える