<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # 精簡數字格式 > 原文: [https://howtodoinjava.com/java12/compact-number-format/](https://howtodoinjava.com/java12/compact-number-format/) 了解如何將語言環境敏感的精簡/較短格式應用于通用編號,例如小數,貨幣和百分比。 它是在 Java 12 中的`CompactNumberFormat`類中添加的。 例如,可以將數字(例如 1000)格式化為“ 1K”(短樣式)或“ 1000”(長樣式)。 ## 1\. `CompactNumberFormat`類 [`CompactNumberFormat`](https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/text/CompactNumberFormat.html)是[`NumberFormat`](https://howtodoinjava.com/java/string/float-to-string-format-decimal-points/)的具體子類,它以精簡形式格式化十進制數。 精簡數字格式設計用于空間受限的環境,并且格式化的字符串可以在該有限的空間中顯示。 精簡數字格式是指基于為給定語言環境提供的模式,以較短的形式表示數字。 #### 1.1 創建新的`CompactNumberFormat`實例 要獲取語言環境的`CompactNumberFormat`,請使用`NumberFormat`給出的工廠方法之一。 ```java NumberFormat fmt = NumberFormat.getCompactNumberInstance( new Locale("hi", "IN"), NumberFormat.Style.SHORT); NumberFormat fmt = NumberFormat.getCompactNumberInstance( Locale.US, NumberFormat.Style.LONG); ``` #### 1.2 自定義`CompactNumberFormat`實例 我們還可以創建自定義的數字格式,在其中可以定義如何使用`CompactNumberFormat(String, DecimalFormatSymbols, String[])`構造器以較短的形式表示數字。 ```java 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); ``` * 精簡數字`compactPatterns`以一系列模式表示,其中每個模式用于格式化一系列數字。 * 數組中最多可以提供 15 個樣式,但是第一個提供的樣式始終對應于`10 ^ 0`。 * 基于數組元素的數量,這些值的范圍為`10 ^ 0`至`10 ^ 14`。 ## 2\. 精簡數字格式示例 #### 2.1 簡單格式化 Java 程序以精簡數字格式格式化數字。 ```java 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) ); } } ``` 程序輸出。 ```java 100 1 thousand 10 thousand 100 thousand 100 1K 10K 100K ``` #### 2.2 設置小數 設置數字的小數部分中允許的最小位數。 默認情況下,小數部分設置為`0`個數字。 ```java 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) ); } } ``` 程序輸出: ```java 10.000K 10.012K 100.201K 1.111M ``` ## 3\. 精簡數字解析示例 Java 程序將精簡數字解析為長模式。 ```java 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") ); } } ``` 程序輸出: ```java 100 1000 10000 100000 ``` 向我提供有關 Java 12 中精簡數字格式**的問題**。 學習愉快!
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看