public int compareTo(Object a) {
int Output = 0;
if(this.equals(a))
Output = 0;
if(a instanceof this.getClass()) {
if(this._numDec > ((this.getClass())a)._numDec)
Output = 1;
if(this._numDec < ((this.getClass())a)._numDec)
Output = -1;
}
return Output;
}
你好。我的CS教練告訴我們的課程創建一個函數,該函數將確定哪個值更大,如果前者較大則輸出1,如果相等則輸出0,如果前者較小則輸出-1。 this.getClass()
最初是一個十六進制類,用於將十六進制值轉換爲_numDec。但是,當我嘗試使用this.getClass()時出現錯誤。有人可以幫忙嗎?getClass()不工作?
John Kugelman,我正在努力使這項工作適用於所有類別的不同基地。所以這應該適用於二進制和十六進制,但我不想寫出兩次,這就是爲什麼我問是否有方法讓我使用.getClass() – user1844067
@ user1844067做'二進制'和「十六進制」有一個共同的基類?如果是這樣,請將compareTo方法放在那裏並使用該類的名稱。 –
不,但他們都共享_numDec整數。我的老師說我們正在假設這兩種類型具有相同的類,因此我想在第一個對象上使用this.getClass(),以在第二個對象上使用this.getClass()來代替您建議我放入的十六進制數。 – user1844067