ce文件res_zh_CH.properties的内容。
Java模式设计之多态模式与多语言支持(8)
时间:2010-12-13
第三题答案、Java库java.text.NumberFormat类提供了对货币数目格式的支持。下面给出的就是解答的类图:
图9、对货币数目格式支持的解答。
程序的源代码如下:
package com.javapatterns.multilingual.number;
import java.util.Locale;
import java.text.NumberFormat;
public class CurrencyFormatTester
{
static public void displayCurrency(Double amount,
Locale currentLocale)
{
NumberFormat formatter;
String amountOut;
formatter =
NumberFormat.getCurrencyInstance(currentLocale);
amountOut = formatter.format(amount);
System.out.println(amountOut + " "
+ currentLocale.toString());
}
static public void main(String[] args)
{
displayCurrency(new Double(1234567.89),
new Locale("en", "US"));
displayCurrency(new Double(1234567.89),
new Locale("de", "DE"));
displayCurrency(new Double(1234567.89),
new Locale("fr", "FR"));
}
}
代码清单11、Resource文件res_zh_CH.properties的内容。
在运行时,程序回打印出下面的结果:
$1,234,567.89 en_US
1.234.567,89 DM de_DE
1 234 567,89 F fr_FR
代码清单12、Resource文件res_zh_CH.properties的内容。
Java模式设计之多态模式与多语言支持(9)
时间:2010-12-13
第四题答案、Java库java.text.NumberFormat类提供了对百分比格式的支持,下面给出的就是解答的类图:
图10、对百分比式支持的解答。
程序的源代码如下:
package com.javapatterns.multilingual.number;
import java.util.Locale;
import java.text.NumberFormat;
public class PercentFormatTester
{
static public void displayPercent(
Double amount, Locale currentLocale)
{
NumberFormat formatter;
String amountOut;
formatter =
NumberFormat.getPercentInstance(currentLocale);
amountOut = formatter.format(amount);
System.out.println(amountOut + " "
+ currentLocale.toString());
}
static public void main(String[] args)
{
displayPercent(new Double(4567.89),
new Locale("en", "US"));
displayPercent(new Double(4567.89),
new Locale("de", "DE"));
displayPercent(new Double(4567.89),
new Locale("fr", "FR"));
}
}
代码清单13、Resource文件res_zh_CH.properties的内容。
在运行时,程序回打印出下面的结果:
1,234,567.89 en_US
1.234.567,89 de_DE
1 234 567,89 fr_FR
代码清单14、Resource文件res_zh_CH.properties的内容。
(本章问答题第二、三、四题的解答参考了[GREEN]的相关例子,在这里我作了一些改动。) |