Method: 1. Use the format method, syntax "String.format("%.2f", value)"; 2. Use the format method of DecimalFormat; 3. Use the setScale method for rounding; 4. Use setMaximumFractionDigits method.
The operating environment of this tutorial: windows7 system, java10 version, DELL G3 computer.
Method 1: String’s format method (recommended)
double f = 111231.5585; System.out.println(String.format("%.2f", f));
Method 2: DecimalFormat’s format method
double f = 111231.5585; DecimalFormat df = new DecimalFormat("#.00"); System.out.println(df.format(f));
Method 3: BigDecimal’s setScale method
double f = 111231.5585; BigDecimal bg = new BigDecimal(f); double f1 = bg.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); System.out.println(f1);
Method 4: NumberFormat’s setMaximumFractionDigits method
double f = 111231.5585; NumberFormat nf = NumberFormat.getNumberInstance(); nf.setMaximumFractionDigits(2); System.out.println(nf.format(f));
Code:
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转换最简便 */ public void m2() { DecimalFormat df = new DecimalFormat("#.00"); System.out.println(df.format(f)); } /** * String.format打印最简便 */ public void m3() { System.out.println(String.format("%.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(); } }
Related video tutorial recommendations: Java video tutorial
The above is the detailed content of How to retain two decimal places in java. For more information, please follow other related articles on the PHP Chinese website!