Nota bene: l'unica cosa che puoi fare è questa
codice:
MyBigInteger intero1 = ...;
MyBigInteger intero2 = ...;
if ( intero1.equals( intero2 ) ) {
...
}
oppure
codice:
MyBigInteger intero1 = ...;
BigInteger intero2 = ...;
if ( intero1.equals( intero2 ) ) {
...
}
ma assolutamente non questa
codice:
BigInteger intero1 = ...;
MyBigInteger intero2 = ...;
if ( intero1.equals( intero2 ) ) {
...
}
Per poter effettuare una delle due operazioni ammissibili, è necessario ridefinire il metodo equals() di MyBigInteger in questo modo:
codice:
public boolean equals(Object obj) {
boolean result = false;
if(obj instanceof MyBigInteger) {
// Qui stai confrontando il tuo MyBigInteger con un altro oggetto di tipo MyBigInteger
... // Controlli di uguaglianza
} else {
if(obj instanceof BigInteger) {
// Qui stai controntando il tuo MyBigInteger con un oggetto BigInteger
... // Controlli di uguaglianza
}
}
return result;
}
Ciao.