Java 11 和 17 之间的货币格式更改为:
\nNumberFormat.getCurrencyInstance(Locale.CANADA_FRENCH).format(100.00)\nRun Code Online (Sandbox Code Playgroud)\n将打印100,00\xc2\xa0$\xc2\xa0CA而不是100,00\xc2\xa0$.
还有比这更好的方法来删除国家代码吗CA?
var currencyFormat = NumberFormat.getCurrencyInstance(Locale.CANADA_FRENCH);\nif (currencyFormat instanceof DecimalFormat decimalFormat) {\n var symbols = DecimalFormatSymbols.getInstance(Locale.CANADA_FRENCH);\n symbols.setCurrencySymbol("$");\n decimalFormat.setDecimalFormatSymbols(symbols);\n}\nRun Code Online (Sandbox Code Playgroud)\n只是为了恢复直到最近为止的默认行为似乎有点太多了。
\n