monetaryamount.java

来自「hibernate 开源框架的代码 jar包希望大家能喜欢」· Java 代码 · 共 79 行

JAVA
79
字号
package org.hibernate.test.sql.hand;import java.math.BigDecimal;import java.util.Currency;import java.io.Serializable;/** * Represents a monetary amount as value and currency. * * @author Gavin King <gavin@hibernate.org> * @author Christian Bauer <christian@hibernate.org> */public class MonetaryAmount implements Serializable {	private final BigDecimal value;	private final Currency currency;	public MonetaryAmount(BigDecimal value, Currency currency) {		this.value = value;		this.currency = currency;	}	public Currency getCurrency() {		return currency;	}	public BigDecimal getValue() {		return value;	}	// ********************** Common Methods ********************** //	public boolean equals(Object o) {		if (this == o) return true;		if (!(o instanceof MonetaryAmount)) return false;		final MonetaryAmount monetaryAmount = (MonetaryAmount) o;		if (!currency.equals(monetaryAmount.currency)) return false;		if (!value.equals(monetaryAmount.value)) return false;		return true;	}	public int hashCode() {		int result;		result = value.hashCode();		result = 29 * result + currency.hashCode();		return result;	}	public String toString() {		return "Value: '" + getValue() + "', " +		        "Currency: '" + getCurrency() + "'";	}	public int compareTo(Object o) {		if (o instanceof MonetaryAmount) {			// TODO: This would actually require some currency conversion magic			return this.getValue().compareTo(((MonetaryAmount) o).getValue());		}		return 0;	}	// ********************** Business Methods ********************** //	public static MonetaryAmount fromString(String amount, String currencyCode) {		return new MonetaryAmount(new BigDecimal(amount),								  Currency.getInstance(currencyCode));	}	public static MonetaryAmount convert(MonetaryAmount amount,										 Currency toConcurrency) {		// TODO: This requires some conversion magic and is therefore broken		return new MonetaryAmount(amount.getValue(), toConcurrency);	}}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?