Formatter provides the method to give out formatted string just like the
printf-style. Layout,alignment and other format flags are provided to format
numeric,string and date/time as well as locale-specified formats applied.
Besides primitive types, formatter also support some java object types such
as BigInteger,BigDecimal and Calendar. Customized formatting is provided
through the Formattable interface.
The class is not multi-threaded safe. The responsibility to maintain thread
safety is the user's job.