我不是台湾人,也不懂台湾普通话.因此,一切都可能如预期的那样.我的观察是:
NumberFormat format = NumberFormat.getCurrencyInstance(Locale.TAIWAN);
format.setCurrency(Currency.getInstance("TWD"));
System.out.println(format.format(1600));
结果是$1,600.00
.这可能代表的是美元,而不是新台币(TWD).但是TWD使用符号NT$
,因此我假设正确的结果是NT$ 1,600.00
.调试表明,NumberFormat构造的计算结果是一个符号集,其中$是默认前缀--但在深入研究细节之前.这是故意的行为吗?
- 在OpenJDK Runtime Environment corretto-18.0.2.9.1(内部版本18.0.2+9-FR)上测试.