public class Binary {
private int _DecNum;
private String _BinNum;
public Binary(int n) {
_DecNum = n;
_BinNum = ConvToBinR(n);
}
public static String ConvToBin(int n) {
String a = "";
while(n > 1) {
a = (n % 2) + a;
n = n /2;
}
return n + a;
}
public String toString() {
return _BinNum;
}
public boolean equals(Object a) {
return this == a || (a instanceof Binary && this._BinNum == ((Binary) a)._BinNum);
}
public static void main(String[] args ) {
int a = Integer.parseInt(args[0]);
int b = Integer.parseInt(args[1]);
Binary Zero = new Binary(a);
Binary One = new Binary(b);
System.out.println("Base 10: " + a + " in Base 2: " + Zero);
System.out.println(Zero.equals(One));
}
}
こんにちは、みんな!equals 関数が何らかの理由で機能しません。this._BinNum == ((バイナリ) a)._BinNum; a と b の値を等しく設定した場合でも、偽のステートメントが表示されます。誰でも助けることができますか?ありがとうございました!