NumberValue: The Numerical Part

It is possible to retrieve the numeric value of a money amount as well as its currency. The methods getCurrency and getNumberreturn CurrencyUnitand NumberValue do this respectively. The method NumberValue extends java.lang.Number and as a result it can easily be converted to primitive numerical types (e.g. int, long, float, double,short,byte).

public class RetrieveInformationMethods {

    public  static  void main(String[] args) {

        MonetaryAmount money = Money.of(10, Monetary.getCurrency("BRL"));
        CurrencyUnit currency = money.getCurrency();
        Number number = money.getNumber();

    }
}

In the example below we show some methods that NumberValue provides. E.g. getPrecision,getScale and getNumberType.

public class RetrieveInformationMethods2 {

    public  static  void main(String[] args) {


        MonetaryAmount money = Money.of(BigDecimal.valueOf(10.21), Monetary.getCurrency("BRL"));
        NumberValue number = money.getNumber();
        int precision = number.getPrecision();//4
        int scale = number.getScale();//2
        long amountFractionDenominator = number.getAmountFractionDenominator();//21
        long amountFractionNumerator = number.getAmountFractionNumerator();//10
        Class<?> numberType = number.getNumberType();//java.math.BigDecimal
        BigDecimal value = number.numberValue(BigDecimal.class);
        Integer integerValue = number.numberValue(Integer.class);


    }
}

results matching ""

    No results matching ""