Java 내부화-로케일 특정 DecimalFormat

기본적으로 DecimalFormat 객체는 JVM의 로케일을 사용합니다. NumberFormat 클래스를 사용하여 DecimalFormat 객체를 만드는 동안 기본 로케일을 변경할 수 있습니다. 아래 예에서는 두 개의 다른 로케일에 대해 동일한 패턴을 사용하고 출력에서 ​​차이점을 찾을 수 있습니다.

IOTester.java

import java.text.DecimalFormat;
import java.text.NumberFormat;
import java.util.Locale;

public class I18NTester {
   public static void main(String[] args) {
      String pattern = "###.##";
      double number = 123.45;

      Locale enlocale  = new Locale("en", "US");
      Locale dalocale  = new Locale("da", "DK");

      DecimalFormat decimalFormat = (DecimalFormat) NumberFormat.getNumberInstance(enlocale);
      decimalFormat.applyPattern(pattern);

      System.out.println(decimalFormat.format(number));
   

      decimalFormat = (DecimalFormat) NumberFormat.getNumberInstance(dalocale);
      decimalFormat.applyPattern(pattern);

      System.out.println(decimalFormat.format(number));     
   }
}

산출

다음 결과를 인쇄합니다.

123.45
123,45
인쇄