One, actually very simple:
double dou = 3000.533
dou = (double) Math.Round (dou*100)/100
where Dou is a variable, it's easy, most of us know Math.Round ( method, but I didn't expect to keep two decimal digits is multiplied by 100 and then divided by.
Keep n decimal places in the same way.
two, the second method
double d = 111231.5585;
BigDecimal B = new BigDecimal (f);
Double df = B.setscale (2, bigdecimal.round_half_up). Doublevalue ();
Three, the third method
double a=10000;//to use double, or A/b will always be 0;
Double b=20000;
NumberFormat nbf=numberformat.getinstance ();
Nbf.setminimumfractiondigits (2);
String C = Nbf.format (A/b);
Import Java.math.BigDecimal;
Import Java.text.DecimalFormat;
Import Java.text.NumberFormat;
public class Format {double F = 111231.5585;
public void M1 () {BigDecimal bg = new BigDecimal (f);
Double f1 = Bg.setscale (2, bigdecimal.round_half_up). Doublevalue ();
System.out.println (F1); /** * DecimalFormat Conversion easiest/public void m2 () {DecimalFormat df = new Deci
Malformat ("#.00");
System.out.println (Df.format (f)); /** * String.Format Print easiest/public void m3 () {System.out.println (string.f
Ormat ("%.2f", f));
public void M4 () {NumberFormat NF = numberformat.getnumberinstance ();
Nf.setmaximumfractiondigits (2);
System.out.println (Nf.format (f));
public static void Main (string[] args) {format f = new format (); F.M1 ();
F.M2 ();
F.M3 ();
F.M4 (); }
}