NumberFormat 是所有數字格式的抽象基類。此類提供格式化和解析數字的接口。 NumberFormat 類還提供了用於確定哪些語言環境(美國、意大利等)具有數字格式及其名稱的方法
NumberFormat 幫助您格式化和解析任何語言環境的數字。您的代碼可以完全獨立於小數點的區域設置約定 thousands-separators,甚至是使用的特定十進製數字,或者數字格式是否為偶數格式。
類 NumberFormat 層次結構:
java.lang.Object java.text.Format java.text.NumberFormat
構造函數:構造函數 描述 NumberFormat() 唯一的構造函數。 (對於子類構造函數的調用,通常是隱式的。)
用法:
public abstract class NumberFormat extends Format
getCompactNumberInstance() 方法:
注意:getCompactNumberInstance() 方法是在 Java 12 中添加的。所以請確保您的機器上安裝了 Java 12 或更高版本。您可以通過以下方式檢查 Java 版本:
java -version
在cmd中輸入上述命令並檢查版本。它應該在 Java 12 以上。
輸出
java version "13.0.2" 2020-01-14 Java(TM) SE Runtime Environment (build 13.0.2+8) Java HotSpot(TM) 64-Bit Server VM (build 13.0.2+8, mixed mode, sharing)
注意:此方法是在Java 12中添加的。所以請確保您的機器上安裝了Java 12或更高版本。可以通過polling命令查看java版本如下:
java -version
在cmd中輸入上述命令並檢查版本。它應該在 Java 12 以上。
輸出:
java version "13.0.2" 2020-01-14 Java(TM) SE Runtime Environment (build 13.0.2+8) Java HotSpot(TM) 64-Bit Server VM (build 13.0.2+8, mixed mode, sharing)
Here the Java version is 13.0.2.
實現方式:
方法一:getCompactNumberInstance()
它是 java.text.NumberFormat 的 內置 方法,它返回默認 FORMAT 語言環境的緊湊數字格式,具有 “SHORT” 格式樣式。
用法:
public static NumberFormat getCompactNumberInstance()
參數:此函數不接受任何參數。
返回值:用於壓縮數字格式的 NumberFormat 實例。
示例
Java
// Java Program to Implement NumberFormat class by
// Illustrating getCompactNumberInstance() Method
// Importing required classes
import java.util.*;
import java.text.NumberFormat;
import java.util.Locale;
// Main class
class GFG {
// Main driver method
public static void main(String args[])
{
// Creating an object of NumberFormat class
NumberFormat nf
= NumberFormat.getCompactNumberInstance();
// Print and display commands
System.out.println(
"This method returns in NumberFormat.Style.SHORT:");
System.out.println("Result:" + nf.format(100));
System.out.println("Result:" + nf.format(10000));
System.out.println("Result:" + nf.format(120300));
System.out.println("Result:" + nf.format(2120000));
System.out.println("Result:"
+ nf.format(1240000300));
}
}
輸出:
This method returns in NumberFormat.Style.SHORT: Result:100 Result:10K Result:120K Result:2M Result:1B
方法二:getCompactNumberInstance ()
它是 java.text.NumberFormat 的 內置 方法,它返回指定語言環境和 formatStyle 的緊湊數字格式。
用法:
public static NumberFormat getCompactNumberInstance(Locale locale, NumberFormat.Style formatStyle)
參數:此函數接受 2 個參數:
- 所需的語言環境
- 格式化數字的樣式
返回值:用於壓縮數字格式的 NumberFormat 實例
異常:如果 locale 或 formatStyle 為 null,則此方法拋出 NullPointerException
例子1
Java
// Java Program to Implement NumberFormat class by
// Illustrating getCompactNumberInstance() Method
// Importing required classes
import java.text.NumberFormat;
import java.util.Locale;
// Main class
public class GFG {
// Main driver method
public static void main(String[] args)
{
// Creating an object of NumberFormat class
NumberFormat nfLong
= NumberFormat.getCompactNumberInstance(
Locale.US, NumberFormat.Style.LONG);
// Print and display commands
System.out.println(nfLong.format(100));
System.out.println(nfLong.format(1000));
System.out.println(nfLong.format(10000));
System.out.println(nfLong.format(100000));
// Again creating an object of NumberFormat class
NumberFormat nfShort
= NumberFormat.getCompactNumberInstance(
Locale.US, NumberFormat.Style.SHORT);
// Print and display commands
System.out.println(nfShort.format(100));
System.out.println(nfShort.format(1000));
System.out.println(nfShort.format(10000));
System.out.println(nfShort.format(100000));
}
}
輸出:
100 1 thousand 10 thousand 100 thousand 100 1K 10K 100K
例子2
Java
// Java Program to Implement NumberFormat class by
// Illustrating getCompactNumberInstance() Method
// Importing required classes
import java.text.NumberFormat;
import java.util.Locale;
// Main class
public class GFG {
// Main driver method
public static void main(String[] args) throws Exception
{
// Creating an object of NumberFormat class
NumberFormat fmt
= NumberFormat.getCompactNumberInstance(
Locale.US, NumberFormat.Style.LONG);
// Print and display commands
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
Note: In the above program, we have used fmt.parse() method to parse compact numbers into LONG pattern.
相關用法
- Java NumberFormat clone()用法及代碼示例
- Java NumberFormat hashCode()用法及代碼示例
- Java NumberFormat equals()用法及代碼示例
- Java NumberFormat getAvailableLocales()用法及代碼示例
- Java NumberFormat getCurrency()用法及代碼示例
- Java NumberFormat getCurrencyInstance()用法及代碼示例
- Java NumberFormat getIntegerInstance()用法及代碼示例
- Java NumberFormat getInstance()用法及代碼示例
- Java NumberFormat getNumberInstance()用法及代碼示例
- Java NumberFormat getMaximumFractionDigits()用法及代碼示例
- Java NumberFormat getPercentInstance()用法及代碼示例
- Java NumberFormat getMinimumFractionDigits()用法及代碼示例
- Java NumberFormat getMaximumIntegerDigits()用法及代碼示例
- Java NumberFormat getRoundingMode()用法及代碼示例
- Java NumberFormat isGroupingUsed()用法及代碼示例
- Java NumberFormat getMinimumIntegerDigits()用法及代碼示例
- Java NumberFormat setMaximumFractionDigits()用法及代碼示例
- Java NumberFormat setMinimumIntegerDigits()用法及代碼示例
- Java NumberFormat parseObject()用法及代碼示例
- Java NumberFormat setRoundingMode()用法及代碼示例
- Java NumberFormat setGroupingUsed()用法及代碼示例
- Java NumberFormat setMaximumIntegerDigits()用法及代碼示例
- Java NumberFormat setMinimumFractionDigits()用法及代碼示例
- Java NumberFormat setParseIntegerOnly()用法及代碼示例
注:本文由純淨天空篩選整理自shantanujain18大神的英文原創作品 NumberFormat getCompactNumberInstance() Method in Java with Examples。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。