package learning;
import java.text.NumberFormat;
import java.util.Locale;
public class NumberFormatTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
//需要被格式化的数字
var db = 12345.23499004;
// 创建四个Locale,分别代表中国,日本,美国,德国
var locales = new Locale[]{Locale.CHINA, Locale.JAPAN, Locale.US, Locale.GERMAN};
var nf = new NumberFormat[12];
// 为上面四个Locale创建十二个NUmberFormat对象
// 每个Locale分别有通用数值格式器、百分格式器、货币格式器
for(var i=0; i<4; i++) {
nf[i*3] = NumberFormat.getNumberInstance(locales[i]);
nf[i*3+1] = NumberFormat.getPercentInstance(locales[i]);
nf[i*3+2] = NumberFormat.getCurrencyInstance(locales[i]);
}
for(var i=0; i<locales.length; i++) {
var tip = i == 0?"___中国格式____":
i==i?"____日本格式____":
i==2?"____德国格式____":"____美国格式____";
System.out.println(tip);
System.out.println("通用数值格式:"+nf[i*3].format(db));
System.out.println("百分比数值格式:"+nf[i*3+1].format(db));
System.out.println("货币数值格式:"+nf[i*3+2].format(db));
}
}
}
中国格式_
通用数值格式:12,345.235
百分比数值格式:1,234,523%
货币数值格式:?12,345.23
日本格式
通用数值格式:12,345.235
百分比数值格式:1,234,523%
货币数值格式:¥12,345
德国格式
通用数值格式:12,345.235
百分比数值格式:1,234,523%
货币数值格式:$12,345.23
美国格式
通用数值格式:12.345,235
百分比数值格式:1.234.523?%
货币数值格式:12.345,23