3

以下は、私が混乱した4つのメソッドです.4つのメソッドはTeacherクラスにあります. 学生クラスと教師クラスがあります。Teacher クラスでは、宣言されているのはArrayList<Student> studentsas インスタンス変数です。

以下に示すメソッドで見た Student を説明する方法と、パラメーターとしても使用されます。私は学生searchStudent(メソッド内)とStudent student(引数内)と非常に混同しています。それArrayListだけですか?あるクラスがクラス名を使用して別のクラスを検索するという概念を理解する方法は?

public Student searchStudent(Student student)
{
    //confuses me
    Student found = null;

    if (this.students.contains(student))
    {
        int index = this.students.indexOf(student);
        if (index != -1)
        {
            found = this.students.get(index);
        }
    }
    return found;
}

public Student searchStudent(int id)
{
    //confuses me
    Student beingSearched = new Student();
    beingSearched.setStudentId(id);
    return this.searchStudent(beingSearched);
}

public boolean addStudent(Student student)
{
    //confuses me
    boolean added = false;
    if (this.searchStudent(student) == null)
    {
        this.students.add(student);
        added = true;
    }
    return added;
}

public boolean addStudent(int id, String name, double grade)
{
    //this is fine as i know boolen and int, String and double//
    Student student = new Student(id, name, grade);
    return this.addStudent(student);
}
4

1 に答える 1

5

メソッドの定義に関するこのリンクを参照することをお勧めします。

  • public Student searchStudent(Student student)

    typeのpublicオブジェクトを返すメソッドであり、 typeStudentのオブジェクトも受け入れますStudentstudentパラメータを検索するため、パラメータを受け入れる必要があります。studentこのメソッドは、レコード ( studentArrayList 内)にいくつか存在するかどうかを検索するときに使用します。

  • public Student searchStudent(int id)

    同じですが、受け入れるパラメーターはint. studentここでは、オブジェクト自体ではなく、のIDで を検索しますstudent

  • public boolean addStudent(Student student)

    ArrayListstudentに ( 型のStudent) を追加するメソッドです。students

ヒント:デバッグモードでコードを実行し、理解できない各メソッドに従ってください。これがプログラムの流れをよりよく理解するのにどれだけ役立つかに驚かれることでしょう。

于 2013-09-23T06:29:59.607 に答える