Java I18n 简明教程

Java Internationalization - Formatting Patterns

以下是格式化模式中字符的用法。

Sr.No.

Class & Description

1

0 如果存在的位数不够,则显示 0。

2

# 显示数字,省略前导零。

3

. Decimal separator.

4

, Grouping separator.

5

E 指数格式的尾数和指数分隔符。

6

; Format separator.

7

- Negative number prefix.

8

% 以百分比显示数字,乘以 100 后显示。

9

? 以千分比显示数字,乘以 1000 后显示。

10

X 用于将字符标记为数字的前缀/后缀。

11

' 用于标记特殊字符周围的引号。

Example

在此示例中,我们会按照不同的模式对数字进行格式化。

import java.text.DecimalFormat;

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

      DecimalFormat numberFormat = new DecimalFormat(pattern);

      System.out.println(number);

      //pattern ###.###
      System.out.println(numberFormat.format(number));

      //pattern ###.#
      numberFormat.applyPattern("###.#");
      System.out.println(numberFormat.format(number));

      //pattern ###,###.##
      numberFormat.applyPattern("###,###.##");
      System.out.println(numberFormat.format(number));

      number = 9.34;

      //pattern 000.###
      numberFormat.applyPattern("000.##");
      System.out.println(numberFormat.format(number));
   }
}

Output

它将打印以下结果。

1.23456789123E8
123456789.123
123456789.1
123,456,789.12
009.34