Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/185.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 缅甸数字的算术运算_Java_Android_Localization - Fatal编程技术网

Java 缅甸数字的算术运算

Java 缅甸数字的算术运算,java,android,localization,Java,Android,Localization,用户使用专用软键盘输入缅甸数字。 然后,我需要增加这个数字。但当我解析输入时,digitOne变成了阿拉伯语。有没有办法让它留在缅甸 String digitText= editText.getText().toString(); Integer digitOne = Integer.parseInt(digitText); 我能找到的唯一解决办法是在算术运算后简单地将其音译: public static String getMyanmarDigitsText(@NonNull String

用户使用专用软键盘输入缅甸数字。 然后,我需要增加这个数字。但当我解析输入时,digitOne变成了阿拉伯语。有没有办法让它留在缅甸

String digitText= editText.getText().toString();
Integer digitOne = Integer.parseInt(digitText);

我能找到的唯一解决办法是在算术运算后简单地将其音译:

public static String getMyanmarDigitsText(@NonNull String numericStr) {
    for (int j = 0; j < numericStr.length(); j++) {
        String character = numericStr.substring(j, j + 1);
        String replacement = MyUtils.getMyanmarDigitSymbol(character);

        if (replacement != null) numericStr = numericStr.replace(character, replacement);
    }

    return numericStr;
}

public static String getEnglishDigitsText(@NonNull String numericStr) {
    for (int j = 0; j < numericStr.length(); j++) {
        String character = numericStr.substring(j, j + 1);
        String replacement = MyUtils.getEnglishDigitSymbol(character);

        if (replacement != null) numericStr = numericStr.replace(character, replacement);
    }

    return numericStr;
}

@Nullable
private static String getMyanmarDigitSymbol(String digit) {
    switch (digit) {
        case "0":
            return "၀";
        case "1":
            return "၁";
        case "2":
            return "၂";
        case "3":
            return "၃";
        case "4":
            return "၄";
        case "5":
            return "၅";
        case "6":
            return "၆";
        case "7":
            return "၇";
        case "8":
            return "၈";
        case "9":
            return "၉";
        default:
            return null;
    }
}

@Nullable
public static String getEnglishDigitSymbol(String digit) {
    switch (digit) {
        case "၀":
            return "0";
        case "၁":
            return "1";
        case "၂":
            return "2";
        case "၃":
            return "3";
        case "၄":
            return "4";
        case "၅":
            return "5";
        case "၆":
            return "6";
        case "၇":
            return "7";
        case "၈":
            return "8";
        case "၉":
            return "9";
        default:
            return null;
    }
}

public static boolean isMyanmarDigits(String numericStr) {
    return numericStr.contains("၀")
            || numericStr.contains("၁")
            || numericStr.contains("၂")
            || numericStr.contains("၃")
            || numericStr.contains("၄")
            || numericStr.contains("၅")
            || numericStr.contains("၆")
            || numericStr.contains("၇")
            || numericStr.contains("၈")
            || numericStr.contains("၉");
}

public static boolean isEnglishDigits(String numericStr) {
    return numericStr.contains("0")
            || numericStr.contains("1")
            || numericStr.contains("2")
            || numericStr.contains("3")
            || numericStr.contains("4")
            || numericStr.contains("5")
            || numericStr.contains("6")
            || numericStr.contains("7")
            || numericStr.contains("8")
            || numericStr.contains("9");
}f
这是一个处理Taïwanese数字的Oracle示例,我希望您在缅甸也需要同样的示例,除了Localemy,MM locale。如果一切正常,调用该区域设置的.getScript方法应该返回Mymr,而这在我的系统上是不正常的