[英]public static boolean Equals Method
我要反對。 學生和課程(均具有此靜態equals方法)我也有我的教授編寫的驅動程序,並且被告知不要觸摸。 我的目標是制作學生所修課程和學生正在修讀的當前課程的兩個列表。
我的教授給了我所有的方法,我應該填寫身體。
我仔細檢查了一下,然后完全按照他的意願復制了equals方法。
這是一個作業問題。
我需要填寫此equals方法的正文。 我已經嘗試過諸如if(this.id == other.getID())之類的事情,但是我一直收到此錯誤:錯誤:無法從靜態上下文引用非靜態變量id
我嘗試使用this.getID()代替,但無濟於事。 我認為這可能與靜態有關。 (我不能更改它。)
編寫此書的正確方法是什么? 我不會在下面的代碼中包含所有的getter和setter方法。
public class Student {
private String id;
private String firstName;
private String lastName;
private String major;
private String minor;
private ArrayList<Course> coursesTaken;
private ArrayList<Course> currentSemesterCourses;
private double gpa;
/**
Course constructor
*/
public Student(String id, String firstName, String lastName, String major, String minor, ArrayList<Course> coursesTaken, ArrayList<Course> currentSemesterCourses) {
/*Your code goes here */
this.id = id;
this.firstName = firstName;
this.lastName = lastName;
this.major = major;
this.minor = minor;
this.coursesTaken = coursesTaken;
this.currentSemesterCourses = currentSemesterCourses;
}
public static boolean Equals(Object obj) {
//Your code goes here
//base it on id firstName, lastName, major, minor and gpa
}
我認為這可能與靜態有關。 (我不能更改它。)
這樣,您的任務毫無意義,也無法解決。
如果要編寫靜態equals(Object)
方法,則沒有Student
。 只有一個傳入的對象,它可以是任何類型。 “等於”是您問兩件事的一個問題,甚至沒有兩件事可以比較,只有一件事甚至可能不是Student
。
您被要求編寫的方法就像問“此對象是否相等?”。 它與那句話完全沒有意義。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.