Assume we have a value object `Duration` (with attributes `numberOfUnits`, `unit`). Would it be a good idea to treat these objects as equal (for example, overriding `Object.equals()`) if they have the same duration but different units? Should `1 min` be equal to `60 sec`.

There are many contradicting examples. With java's `BigDecimal` `compareTo() == 0` does not imply `equals() == true` (`new BigDecimal("0").equals(new BigDecimal("0.0"))` returns false). But `Duration.ofHours(24).equals(Duration.ofDays(1))` returns true.