JAvaフォーマット数値DecimalFormat
数字を出力する場合、数字に単位を付ける必要がある場合もあれば、数字に一定の精度が必要な場合もあり、科学的なカウント法で数字を表す必要がある場合もある.
主な技術分析:
v JAva.text.DecimalFormatクラスは、数値のフォーマットに特化しています.
v DecimalFormatにフォーマットモードPatternを提供する必要があります.スキーマは、構築メソッドまたはDecimalFormatのapplyPatternメソッドで設定します.Patternのタイプは文字列です.
v DecimalFormatオブジェクトのpatternを使用してパラメータをフォーマットするフォーマットされる数値のformatインスタンスメソッドを呼び出します.
出力結果:フォーマット前:1203.405607809 0.0モードフォーマット後:1203.4 000000000.000 kgモードフォーマット後:00001203.406 kg##000.000 kgモードフォーマット後:1203.406 kg-000.000モードフォーマット後:-1203.406 kg-000.000モードフォーマット後:-1203.406-0,00.0#モードフォーマット後:-12,03.41 0.00E 000モードフォーマット後:1.20 E 003 0.00%モードグリッド式化後:120340.56%0.00‰モードでフォーマットした後:1203405.61‰0.00モードでフォーマットした後:1203.41¥'#'#モードでフォーマットした後:1203#o''clockモードでフォーマットした後:1203 o'clock'#0.000モードでフォーマットした後:'1203.406
分析:
² Java.text.DecimalFormの構築方法でパターンを作成したり、applyPatternメソッドを使用してフォーマットモードを設定したりすることができます.
² フォーマットモードには特定のルールがあり、あまり文字が異なる意味を表し、使用中に自分でフォーマットを設計するモードが必要です.よく使われるパターンは「.」、「-」、「#」、「%」、「u 2030」、「,」「E」、「0」です.これらのパターンの具体的な意味については、プログラムコメントで詳しく説明されていますが、JDKのヘルプドキュメントを参照してください.
数字を出力する場合、数字に単位を付ける必要がある場合もあれば、数字に一定の精度が必要な場合もあり、科学的なカウント法で数字を表す必要がある場合もある.
主な技術分析:
v JAva.text.DecimalFormatクラスは、数値のフォーマットに特化しています.
v DecimalFormatにフォーマットモードPatternを提供する必要があります.スキーマは、構築メソッドまたはDecimalFormatのapplyPatternメソッドで設定します.Patternのタイプは文字列です.
v DecimalFormatオブジェクトのpatternを使用してパラメータをフォーマットするフォーマットされる数値のformatインスタンスメソッドを呼び出します.
import java.text.DecimalFormat;
public class TestDecimalFormat {
public static void main(String[] args) {
DecimalFormat df = new DecimalFormat();
double data = 1203.405607809;
System.out.println(" :" + data);
String pattern = "0.0";//1203.4
df.applyPattern(pattern);
System.out.println(" " + pattern + " :" + df.format(data));
// ,
pattern = "00000000.000kg";//00001203.406kg
df.applyPattern(pattern);
System.out.println(" " + pattern + " :" + df.format(data));
//# , ,
pattern = "##000.000kg";//1203.406kg
df.applyPattern(pattern);
System.out.println(" " + pattern + " :" + df.format(data));
//- ,
pattern = "-000.000";//-1203.406
df.applyPattern(pattern);
System.out.println(" " + pattern + " :" + df.format(data));
//, : 12,03.41
pattern = "-0,00.0#";//-12,03.41
df.applyPattern(pattern);
System.out.println(" " + pattern + " :" + df.format(data));
//E ,”E“ , 。
pattern = "0.00E000";//1.20E003
df.applyPattern(pattern);
System.out.println(" " + pattern + " :" + df.format(data));
//% 100 ,
pattern = "0.00%";//120340.56%
df.applyPattern(pattern);
System.out.println(" " + pattern + " :" + df.format(data));
//"\u2030" 1000 ,
pattern = "0.00\u2030";//203405.61‰
df.applyPattern(pattern);
System.out.println(" " + pattern + " :" + df.format(data));
//"\u00A4" , *****1203.41¥
pattern = "0.00\u00A4";//1203.41¥
df.applyPattern(pattern);
System.out.println(" " + pattern + " :" + df.format(data));
//' , , :"# o''clock"。
pattern = "'#'#" ;//#1203
//pattern = "'#'" ;//#1203
df.applyPattern(pattern);
System.out.println(" " + pattern + " :" + df.format(data));
pattern = "# o''clock" ;//1203 o'clock
df.applyPattern(pattern);
System.out.println(" " + pattern + " :" + df.format(data));
//'' ,
//pattern = "# o''clock.000" ;//1203.406 o'clock
//pattern = "# .000o''clock";//1203.406 o'clock
//pattern = "# .000''";//1203.406 '
//pattern = "# .''000";//1203.406 '
pattern = "''# .000";//'1203.406
df.applyPattern(pattern);
System.out.println(" " + pattern + " :" + df.format(data));
}
}
出力結果:フォーマット前:1203.405607809 0.0モードフォーマット後:1203.4 000000000.000 kgモードフォーマット後:00001203.406 kg##000.000 kgモードフォーマット後:1203.406 kg-000.000モードフォーマット後:-1203.406 kg-000.000モードフォーマット後:-1203.406-0,00.0#モードフォーマット後:-12,03.41 0.00E 000モードフォーマット後:1.20 E 003 0.00%モードグリッド式化後:120340.56%0.00‰モードでフォーマットした後:1203405.61‰0.00モードでフォーマットした後:1203.41¥'#'#モードでフォーマットした後:1203#o''clockモードでフォーマットした後:1203 o'clock'#0.000モードでフォーマットした後:'1203.406
分析:
² Java.text.DecimalFormの構築方法でパターンを作成したり、applyPatternメソッドを使用してフォーマットモードを設定したりすることができます.
² フォーマットモードには特定のルールがあり、あまり文字が異なる意味を表し、使用中に自分でフォーマットを設計するモードが必要です.よく使われるパターンは「.」、「-」、「#」、「%」、「u 2030」、「,」「E」、「0」です.これらのパターンの具体的な意味については、プログラムコメントで詳しく説明されていますが、JDKのヘルプドキュメントを参照してください.