Métodos de creación
Para crear una instancia de MonetaryAmount
, todas las implementaciones siguen el mismo standard de nomenclatura utilizando, con una pequeña excepción en RoundedMoney
una vez que el pueda recibir un MonetaryOperator
para trabajar como “redondeador” en cada operación. Listando los mas importantes tenemos tres métodos, que son:
- El método of pasando un number y un código de moneda.
- El método zero pasando un CurrencyUnit.
- El método ofMinor pasando un long y una moneda, ese long será tratado como centavos y será convertido llevando en consideración la moneda, por ejemplo, 200 cents equivalen a dos dólares.
public class MethodsCreationMoney {
public static void main(String[] args) {
CurrencyUnit currency = Monetary.getCurrency("BRL");
MonetaryAmount money = Money.of(BigDecimal.TEN, currency); //BRL 10
MonetaryAmount zero = Money.zero(currency);//BRL 0
MonetaryAmount moneyFromCurrencyCode = Money.of(10, "USD");//USD 10
MonetaryAmount moneyFromCents = Money.ofMinor(currency, 100_00);//BRL 10
}
}
public class MethodsCreationsFastMoney {
public static void main(String[] args) {
CurrencyUnit currency = Monetary.getCurrency("BRL");
MonetaryAmount money = FastMoney.of(BigDecimal.TEN, currency); //BRL 10
MonetaryAmount zero = FastMoney.zero(currency);//BRL 0
MonetaryAmount moneyFromCurrencyCode = FastMoney.of(10, "USD");//USD 10
MonetaryAmount moneyFromCents = FastMoney.ofMinor(currency, 100_00);//BRL 10
}
}
public class MethodsCreationRoundedMoney {
public static void main(String[] args) {
CurrencyUnit currency = Monetary.getCurrency("BRL");
MonetaryAmount money = RoundedMoney.of(BigDecimal.TEN, currency); //BRL 10
MonetaryAmount zero = RoundedMoney.zero(currency);//BRL 0
MonetaryAmount moneyFromCurrencyCode = RoundedMoney.of(10, "USD");//USD 10
MonetaryAmount moneyFromCents = RoundedMoney.ofMinor(currency, 100_00);//BRL 10
}
}