Formatting Numbers and Currency : Formatter « Utility Classes « SCJP






import java.text.NumberFormat;
import java.util.Locale;

public class MainClass{
    public static void main(String[] argv){
        Locale[] locales = { Locale.US, Locale.ITALY };
        for (Locale loc:locales) {
          NumberFormat f = NumberFormat.getInstance(loc);
          String formattedNumber = f.format(111123456.78911);
          System.out.format("%15s: %s\n", loc.getDisplayCountry(),
                               formattedNumber);
        }

    }
}
United States: 111,123,456.789
          Italy: 111.123.456,789








8.25.Formatter
8.25.1.%b Formats a boolean value (wrapper or primitive)
8.25.2.%c Formats a character
8.25.3.%d Formats an integer
8.25.4.%f Formats a floating-point number
8.25.5.%s Formats an object, generally by calling its toString() method
8.25.6.By default, arguments are formatted in their order of appearance in Formatter.
8.25.7.Stick a number and then a dollar sign ($) immediately after the % sign to set the order
8.25.8.Justified a field with Formatter
8.25.9.Control the number of characters that will appear to the right of the decimal point: %w.df
8.25.10.Internationalization and Formatter
8.25.11.Formatting Dates with java.text.DateFormat
8.25.12.Prints out a date in each of the four formats. (The locale is the U.S.)
8.25.13.DateFormat.getDateInstance() accepts a style and a locale.
8.25.14.Formatting Numbers and Currency
8.25.15.To format currency, call NumberFormat.getCurrencyInstance().
8.25.16.The Locale Class
8.25.17.Create Strings that represent a given locale's country and language in terms of both the default locale and any other locale:
8.25.18.The NumberFormat Class
8.25.19.Use getMaximumFractionDigits(), setMaximumFractionDigits(), parse(), and setParseIntegerOnly():