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));
}
}
嗨,大家好!由於某些原因,我的等價函數不起作用,我無法弄清楚。 this._BinNum ==((Binary)a)._ BinNum;即使我將a和b的值設置爲相等,也會給我一個錯誤的陳述。誰能幫忙?謝謝!Java平等不起作用?
http://stackoverflow.com/questions/767372/java-string-equals-versus – Alex
4個答案和1個評論在這個問題在空氣中的19秒內。 – Isaac