コード例 #1
0
  @Override
  public boolean equals(Object obj) {
    if (!(obj instanceof Money)) {
      return false;
    }

    Money value = (Money) obj;
    return this.value.compareTo(value.getValue()) == 0;
  }
コード例 #2
0
 @Override
 protected AbstractValue divMoney(Money value) {
   if (this.value.compareTo(new BigDecimal(0)) == 0) {
     // Prevent division by zero.
     return new Money(this.value);
   } else {
     return new Money(value.getValue().divide(this.value, Money.ROUNDING_MODE));
   }
 }
コード例 #3
0
 @Override
 protected AbstractValue subMoney(Money value) {
   return new Money(value.getValue().subtract(this.value));
 }
コード例 #4
0
 @Override
 protected AbstractValue mulMoney(Money value) {
   return new Money(value.getValue().multiply(this.value));
 }
コード例 #5
0
 @Override
 protected AbstractValue addMoney(Money value) {
   return new Money(value.getValue().add(this.value));
 }
コード例 #6
0
 @Override
 public AbstractValue ltMoney(Money value) {
   return new Bool(value.getValue().compareTo(this.value) == -1);
 }
コード例 #7
0
 @Override
 public AbstractValue geqMoney(Money value) {
   return new Bool(value.getValue().compareTo(this.value) >= 0);
 }