將數(shù)字進(jìn)行格式化福荸,比如取2位小數(shù),這是最常見的。Java 提供 DecimalFormat 類,幫你用最快的速度將數(shù)字格式化為你需要的樣子。下面是常用的例子:
import java.text.DecimalFormat;
public class Test{
public static void main(String[] args){
double pi=3.1415927;//圓周率
//取一位整數(shù)
System.out.println(new DecimalFormat("0").format(pi));//3
//取一位整數(shù)和兩位小數(shù)
System.out.println(new DecimalFormat("0.00").format(pi));//3.14
//取兩位整數(shù)和三位小數(shù)学赛,整數(shù)不足部分以0填補(bǔ)绢掰。
System.out.println(new DecimalFormat("00.000").format(pi));//03.142
//取所有整數(shù)部分
System.out.println(new DecimalFormat("#").format(pi));//3
//以百分比方式計(jì)數(shù),并取兩位小數(shù)
System.out.println(new DecimalFormat("#.##%").format(pi));//314.16%
long c=299792458;//光速
//顯示為科學(xué)計(jì)數(shù)法萧芙,并取五位小數(shù)
System.out.println(new DecimalFormat("#.#####E0").format(c));//2.99792E8
//顯示為兩位整數(shù)的科學(xué)計(jì)數(shù)法包帚,并取四位小數(shù)
System.out.println(new DecimalFormat("00.####E0").format(c));//29.9792E7
//每三位以逗號(hào)進(jìn)行分隔。
System.out.println(new DecimalFormat(",###").format(c));//299,792,458
//將格式嵌入文本
System.out.println(new DecimalFormat("光速大小為每秒,###米").format(c)); //光速大小為每秒299,792,458米
}
}
復(fù)制代碼
DecimalFormat 類主要靠 # 和 0 兩種占位符號(hào)來(lái)指定數(shù)字長(zhǎng)度。
-
0
表示如果位數(shù)不足則以 0 填充矾策, -
#
表示只要有可能就把數(shù)字拉上這個(gè)位置。
上面的例子包含了差不多所有的基本用法,如果你想了解更多,請(qǐng)參考 DecimalFormat 類的文檔玩敏。