我想检查是否等于2的分数。我认为我写的方法不正确,因为可能会失去准确性。我是对还是错?
public boolean equals(Rational r) {
return (double) numerator / denominator == (double) r.numerator / r.denominator;
}
最佳答案
我认为这样会更好:
public boolean equals(Rational r) {
return numerator * r.denominator == r.numerator * denominator;
}