BigDecimal es igual a () versus compareTo ()

Considere la clase de prueba simple:

import java.math.BigDecimal;

/**
 * @author The Elite Gentleman
 *
 */
public class Main {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        BigDecimal x = new BigDecimal("1");
        BigDecimal y = new BigDecimal("1.00");
        System.out.println(x.equals(y));
        System.out.println(x.compareTo(y) == 0 ? "true": "false");
    }

}

Puedes (conscientemente) decir quex es igual ay (no referencia de objeto), pero cuando ejecuta el programa, el siguiente resultado muestra:

false
true

Pregunta: ¿Cuál es la diferencia entrecompareTo() yequals() inBigDecimal esecompareTo puede determinar quex es igual ay?

PS: veo que BigDecimal tiene unainflate() método enequals() método. Que haceinflate() ¿en realidad?

Respuestas a la pregunta(3)

Su respuesta a la pregunta