Wie überprüfe ich, ob ein BigDecimal in einem Set oder einer Map in einer maßstabsunabhängigen Weise enthalten ist?

BigDecimal'sequals() Methode vergleicht auch Maßstab, also

new BigDecimal("0.2").equals(new BigDecimal("0.20")) // false

Es istbestritten warum es sich so verhält.

Angenommen, ich habe eineSet<BigDecimal>, Wie überprüfe ich, ob 0,2 in diesem Set enthalten ist, unabhängig von der Skalierung?

Set<BigDecimal> set = new HashSet<>();
set.add(new BigDecimal("0.20"));
...
if (set.contains(new BigDecimal("0.2")) { // Returns false, but should return true
    ...
}

Antworten auf die Frage(3)

Ihre Antwort auf die Frage