我能够格式化美国和印度的货币。我已经尝试过使用Localebuilder的一些实现,任何人都可以解释一下我所缺少的内容。
import java.io.*;
import java.util.*;
import java.text.*;
import java.math.*;
import java.util.regex.*;
import java.text.NumberFormat;
import java.util.Locale;
public class Solution {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
double payment = scanner.nextDouble();
scanner.close();
// Write your code here.
NumberFormat us = NumberFormat.getcurrencyInstance(Locale.US);
System.out.println("US: " + us.format(payment));
Locale indiaa = new Locale("en","IN");
NumberFormat india = NumberFormat.getcurrencyInstance(indiaa);
System.out.println("India: " + india.format(payment));
Locale chinaLocale = new Locale.Builder().setLanguage("zh").setRegion("CN").build();
NumberFormat china = NumberFormat.getcurrencyInstance(chinaLocale);
System.out.println("China: " + china.format(payment));
NumberFormat france = NumberFormat.getcurrencyInstance(Locale.FRANCE);
System.out.println("France: " + france.format(payment));
}
}
我得到的输出
US: $12,324.13
India: Rs.12,324.13
China: ?12,324.13
France: 12?324,13 ?
预期产量
US: $12,324.13
China: ¥12,324.13
France: 12 324,13 €
我仍然是初学者 在此先感谢