NumberFormatとDecimalFormatの導入と使用についての説明
NumberFormatとDecimalFormatは、Javaで数字をフォーマットするためのクラスです。
NumberFormatは、数字のフォーマットと解析を提供する抽象クラスです。よく使われるサブクラスには、DecimalFormatとChoiceFormatがあります。
DecimalFormatはNumberFormatの具体的なサブタイプであり、特定の形式で数字をフォーマットするために使用できます。このクラスは小数点以下の桁数、3桁ごとの区切り記号、通貨記号などを指定することができます。
DecimalFormatを使用して数字をフォーマットする例を以下に示します:
double number = 12345.6789;
DecimalFormat df = new DecimalFormat("#,##0.00");
String formattedNumber = df.format(number);
System.out.println(formattedNumber);
結果は、12,345.68です。
上記の例では、フォーマット規則を指定するために、パターン文字列#,##0.00を使用しました。そのうち、#,##0は千の位区切りを表し、.00は小数点以下2桁を保持することを表します。
数字をフォーマットする他に、DecimalFormatは文字列を数字に変換することもできます。例えば:
String str = "1,234.56";
double parsedNumber = df.parse(str).doubleValue();
System.out.println(parsedNumber);
結果は1234.56です。
上記の例では、文字列を数字に解析するためにdf.parse(str)メソッドを使用しました。
DecimalFormat以外にも、NumberFormatには、数字をフォーマットしたり解析したりするための他のメソッドが用意されています。例えば、getCurrencyInstance()は通貨形式にフォーマットするためのメソッドであり、getPercentInstance()はパーセント形式にフォーマットするためのメソッドです。
要简单地说,NumberFormat和DecimalFormat是用于在Java中对数字进行格式化的类,可以将数字转化为特定的模式,也可以将字符串解析为数字。