A classe MonetaryAmountFormat

Com o MonetaryFormats é possível criar formatador a partir de uma query builder ou utilizando apenas pelo Locale. Com o enum CurrencyStyle é possível informar quais informações entrarão no formatador.

public class MonetaryFormatsExampleQuery {

    public static void main(String[] args) {
        CurrencyUnit currency = Monetary.getCurrency("USD");
        MonetaryAmount money = Money.of(12, currency);

        MonetaryAmountFormat format = MonetaryFormats
                        .getAmountFormat(AmountFormatQueryBuilder.of(Locale.US).set(CurrencyStyle.SYMBOL).build());


        String resultText = format.format(money);//$12.00
    }
}

Com o AmountFormatQueryBuilder é possível também, criar formatos customizados.

public class MonetaryFormatsExampleQueryCustom {

    public static void main(String[] args) {
        MonetaryAmount amount = Money.of(12345.67, "USD");
        MonetaryAmountFormat customFormat = MonetaryFormats.getAmountFormat(
                AmountFormatQueryBuilder.of(Locale.US)
                .set(CurrencyStyle.NAME)
                .set("pattern", "00,00,00,00.00 ¤")
                .build()); 

                String formatted = customFormat.format(amount); //00,01,23,45.67 US Dollar
    }
}

results matching ""

    No results matching ""