源代码:
package xyz.jangle.math;import java.text.DecimalFormat;
import java.text.ParseException;/*** DecimalFormat的使用* @author jangle* @email 274676957@qq.com* 2025年10月11日 下午6:49:51*/
public class DecimalFormatM {/*** 2025年10月11日 下午6:49:52 @author jangle* @param args*/public static void main(String[] args) {double number = 12345.9876543;DecimalFormat df = new DecimalFormat("000000.000"); // 整数最少6位,小数最少3位。String result = df.format(number);System.out.println(result);number = 12345678.987654;df.applyPattern("#,##,#00.0000$"); // 整数最少2位,小数最少4位//df = new DecimalFormat("#,##,#00.0000$");result = df.format(number);System.out.println(result);number = 0.986796;df.applyPattern("0.0000%"); //百分数result = df.format(number);System.out.println(result);df.applyPattern("0.0000\u2030"); //千分数result = df.format(number);System.out.println(result);number = 31456.4567;df.applyPattern("0.00E0"); //科学计数法result = df.format(number);System.out.println(result);String money = "3,521,563.345¥";df.applyPattern("#,##,##0.000");try {Number num = df.parse(money);System.out.println(num.doubleValue());} catch (ParseException e) {e.printStackTrace();}result = df.format(new BigDecimal("10000"));System.out.println(result);}}
输出结果:
012345.988
12,345,678.9877$
98.6796%
986.7960‰
3.15E4
3521563.345
10,000.000