import java.text.*;

public class DecimalFormatDemo
{

    public static void main(String[] x)
    {
        DecimalFormat twoDigitsPastPoint = new DecimalFormat("0.00");
        DecimalFormat threeDigitsPastPoint = new DecimalFormat("00.000");

        double d = 12.3456789;
        System.out.println(twoDigitsPastPoint.format(d));
        System.out.println(threeDigitsPastPoint.format(d));

        double money = 12.8;
        System.out.println("$" + twoDigitsPastPoint.format(money));
        String numberString = twoDigitsPastPoint.format(money);
        System.out.println(numberString);

        DecimalFormat percent = new DecimalFormat("0.00%");

        double fraction = 0.734;
        System.out.println(percent.format(fraction));

        DecimalFormat eNotation1 =
            new DecimalFormat("#0.###E0");//1 or 2 digits before point
        DecimalFormat eNotation2 =
            new DecimalFormat("00.###E0");//2 digits before point

        double number = 123.456;
        System.out.println(eNotation1.format(number));
        System.out.println(eNotation2.format(number));

        double small = 0.0000123456;
        System.out.println(eNotation1.format(small));
        System.out.println(eNotation2.format(small));
    }
}
