數(shù)字格式化在我們實際生活中的應用十分的普遍的,例如在統(tǒng)計價格的時候,常常會把價格統(tǒng)一成小數(shù)點后兩位,如果不足兩位,那么就會以 0 來補齊。下面,我將通過 Java 中的 DecimalFormat 類是怎么實現(xiàn)數(shù)字格式化的。
一、簡介
在應用 DecimalFormat 類之前,我們先了解一下 DecimalFormat 這個類。
DecimalFormat 是 NumberFormat 的一個子類,是用在十進制數(shù)字的格式化。它具備了許多的功能。比如解析和格式化在所有語言環(huán)境中的數(shù)字,這其中也包括了西方,阿拉伯語和印度語數(shù)字。同時,也支持了許多不同類型的數(shù)字,例如整數(shù)、小數(shù)、科學計數(shù)法、百分比或是貨幣金額,以上這些類型都可以進行本地化。
DecimalFormat 類中定義了一個模式和一組符號,常用的符號具體如下圖所示:
二、代碼演示
下面將通過編寫一個簡單的 Java 程序,演示如何使用 DecimalFormat 類將數(shù)字轉(zhuǎn)化成相應的格式,具體代碼如下:
import java.text.DecimalFormat;
import java.util.Scanner;
public class Demo01 {
public static void main(String[] args) {
// 實例化DecimalFormat類的對象,并分別指定格式
DecimalFormat df1=new DecimalFormat("0.0");
DecimalFormat df2=new DecimalFormat("#.#");
DecimalFormat df3=new DecimalFormat("000.000");
DecimalFormat df4=new DecimalFormat("###.###");
Scanner sc=new Scanner(System.in);
System.out.println("請輸入一個float類型的數(shù)字:");
float f=sc.nextFloat();
// 對輸入的數(shù)字應用相應格式,打印結(jié)果
System.out.println("0.0格式:"+df1.format(f));
System.out.println("#.#格式:"+df2.format(f));
System.out.println("000.000格式:"+df3.format(f));
System.out.println("###.###格式:"+df4.format(f));
}
}
運行結(jié)果:
請輸入一個float類型的數(shù)字:
356.2356545
0.0格式:356.2
#.#格式:356.2
000.000格式:356.236
###.###格式:356.236
請輸入一個float類型的數(shù)字:
32.0
0.0格式:32.0
#.#格式:32
000.000格式:032.000
###.###格式:32
其他格式的應用:
DecimalFormat df1=new DecimalFormat("000,000"); // 組分隔符
DecimalFormat df2=new DecimalFormat("00%"); // 百分號
打印結(jié)果:
請輸入一個float類型的數(shù)字:
99999.36548
,格式:099,999
%格式:9999937%
三、總結(jié)
以上就是關于 Java 中 DecimalFormat 類對數(shù)字格式化處理的詳細應用的全部內(nèi)容,想要了解更多相關 Java 格式化的內(nèi)容,請搜索W3Cschool相關文章。希望本篇文章對大家的學習有所幫助,也希望大家能夠多多地關注和支持我們!