本篇內(nèi)容主要講解“Java 12的數(shù)字格式化介紹”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學(xué)習(xí)“Java 12的數(shù)字格式化介紹”吧!
網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)!專注于網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、小程序開發(fā)、集團企業(yè)網(wǎng)站建設(shè)等服務(wù)項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了合陽免費建站歡迎大家使用!
在Java 12中添加的 CompactNumberFormat 類??梢詫?shù)字(例如1000)格式化為" 1K"(短樣式)或" 1000"(長樣式)。
要獲取語言環(huán)境的 CompactNumberFormat
,請使用 NumberFormat
給出的工廠方法之一。
NumberFormat fmt = NumberFormat.getCompactNumberInstance(new Locale("hi", "IN"), NumberFormat.Style.SHORT); NumberFormat fmt = NumberFormat.getCompactNumberInstance( Locale.US, NumberFormat.Style.LONG);
我們還可以創(chuàng)建自定義的數(shù)字格式,在其中可以定義如何使用CompactNumberFormat(String,DecimalFormatSymbols,String [])
構(gòu)造函數(shù)以較短的形式表示數(shù)字。
final String[] compactPatterns = {"", "", "", "0k", "00k", "000k", "0m", "00m", "000m", "0b", "00b", "000b", "0t", "00t", "000t"}; final DecimalFormat decimalFormat = (DecimalFormat)NumberFormat.getNumberInstance(Locale.GERMANY); final CompactNumberFormat customCompactNumberFormat = new CompactNumberFormat( decimalFormat.toPattern(), decimalFormat.getDecimalFormatSymbols(), compactPatterns);
簡單格式化 - Java程序以緊湊數(shù)字格式格式化數(shù)字。
import java.text.NumberFormat; import java.util.Locale; public class Main { public static void main(String[] args) { NumberFormat fmt = NumberFormat .getCompactNumberInstance(Locale.US, NumberFormat.Style.LONG); System.out.println( fmt.format(100) ); System.out.println( fmt.format(1000) ); System.out.println( fmt.format(10000) ); System.out.println( fmt.format(100000) ); NumberFormat fmtShort = NumberFormat.getCompactNumberInstance(Locale.US, NumberFormat.Style.SHORT); System.out.println( fmtShort.format(100) ); System.out.println( fmtShort.format(1000) ); System.out.println( fmtShort.format(10000) ); System.out.println( fmtShort.format(100000) ); } }
程序輸出。
100 1 thousand 10 thousand 100 thousand 100 1K 10K 100K
設(shè)置小數(shù) - 設(shè)置數(shù)字的小數(shù)部分中允許的最小位數(shù)。默認情況下,小數(shù)部分設(shè)置為'0'
位。
import java.text.NumberFormat; import java.util.Locale; public class Main { public static void main(String[] args) { NumberFormat fmt = NumberFormat.getCompactNumberInstance(Locale.US, NumberFormat.Style.SHORT); fmt.setMinimumFractionDigits(3); System.out.println( fmt.format(10000) ); System.out.println( fmt.format(10012) ); System.out.println( fmt.format(100201) ); System.out.println( fmt.format(1111111) ); } }
程序輸出。
10.000K 10.012K 100.201K 1.111M
Java程序?qū)⒕o湊數(shù)解析為長模式。
import java.text.NumberFormat; import java.util.Locale; public class Main { public static void main(String[] args) throws Exception { NumberFormat fmt = NumberFormat .getCompactNumberInstance(Locale.US, NumberFormat.Style.LONG); System.out.println( fmt.parse("100") ); System.out.println( fmt.parse("1 thousand") ); System.out.println( fmt.parse("10 thousand") ); System.out.println( fmt.parse("100 thousand") ); } }
程序輸出。
100 1000 10000 100000
到此,相信大家對“Java 12的數(shù)字格式化介紹”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!