decimalformat 예제

다음 텍스트는 DecimalFormat 및 DecimalFormatSymbols 클래스를 보여 주는 예제를 사용합니다. 이 자료의 코드 예제는 DecimalFormatDemo라는 샘플 프로그램에서 사용됩니다. 예를 들어 이탈리아 로캘이 있는 JVM에서 ###.### 패턴을 실행하면 1.234.567,89가 출력됩니다. 그룹화 구분 기호는 많은 숫자를 더 읽기 쉽게 만들기 위해 정수 숫자의 클러스터를 구분하는 문자입니다. 그것은 일반적으로 수천에 대 한 사용, 하지만 일부 로캘에서 그것은 수만 분리. 그룹화 크기는 “100,000,000”에 대한 3 또는 “1 0000 0000″에 대한 4와 같은 그룹화 구분 기호 사이의 숫자 수입니다. 실제로 두 개의 서로 다른 그룹화 크기가 있습니다: 가장 중요 한 정수 숫자에 사용 되는 하나, 기본 그룹화 크기, 그리고 다른 모든 것에 사용 되는 하나, 보조 그룹화 크기. 대부분의 로캘에서는 동일하지만 때로는 다릅니다. 예를 들어 기본 그룹화 간격이 3이고 보조 간격이 2인 경우 패턴 “#,##,#0″에 해당하며 숫자 123456789는 “12,34,56,789”로 서식이 지정됩니다. 패턴에 여러 그룹화 구분 기호가 포함된 경우 정수의 마지막 하나와 끝 사이의 간격은 기본 그룹화 크기를 정의하고 마지막 두 사이의 간격은 보조 그룹화 크기를 정의합니다. 다른 모든 무시, 그래서 “#,###########”, “##,#####”과 “##,######”과 “##,######”는 동일한 결과를 생성합니다. 무한대, 숫자, 수천 개의 구분 기호, 소수점 구분기호 등에 사용되는 접두사, 접미사 및 다양한 기호는 임의의 값으로 설정될 수 있으며 서식 지정 중에 올바르게 나타납니다.

그러나 기호와 문자열이 충돌하지 않거나 구문 분석이 신뢰할 수 없는 지 주의해야 합니다. 예를 들어 양수 접두사와 네거티브 접미사 또는 접미사는 음수 값과 양수 값을 구분할 수 #parse 구별되어야 합니다. 또 다른 예는 소수점 구분 기호와 수천 개의 구분 기호가 별개의 문자여야 하거나 구문 분석이 불가능해야 한다는 것입니다. 이전 예제에서는 코드가 실행 중인 JVM의 기본 로캘에 대해 DecimalFormat을 만들었습니다. 로캘에 따라 숫자를 표시하려는 경우 로캘을 전달하는 NumberFormat 클래스의 개체를 만든 다음 DecimalFormat으로 캐스팅합니다. 패턴의 많은 문자는 문자 그대로 촬영됩니다. 구문 분석 중에 일치하며 서식 지정 중에 변경되지 않고 기록됩니다. 반면에 특수 문자는 다른 문자, 문자열 또는 문자 클래스를 대신합니다.

예를 들어 `#` 문자는 지역화된 숫자로 바뀝습니다.