Search code examples
javacollectionsbigdecimal

Find BigDecimal in a Set


Taking into consideration that

new BigDecimal("0").equals(new BigDecimal("0.0")) == false

How could I find BigDecimal in java.util.Set using 'compareTo' logic?

new BigDecimal("0").compareTo(new BigDecimal("0.0")) == 0

Solution

  • Use a TreeSet, which by default uses compareTo(), unlike a HashSet, which uses equals() and hashCode().