gpt4 book ai didi

java - java中的破折号分隔符正在改变输出

转载 作者:太空宇宙 更新时间:2023-11-04 07:41:28 24 4
gpt4 key购买 nike

我正在使用下面的java代码将数字转换为阿拉伯语

    String str = "1234-5678-9101";

char[] chars = {'٠','١','٢','٣','٤','٥','٦','٧','٨','٩'};
StringBuilder builder = new StringBuilder();

for (int i = 0; i < str.length(); ++i) {
if (Character.isDigit(str.charAt(i))) {
builder.append(Chars[(int)(str.charAt(i))-48]);
} else {
builder.append(str.charAt(i));
}
}

预期输出是 ٩١٠١-٥٦٧٨-١٢٣٤,但结果是 ١٢٣٤-٥٦٧٨-٩١٠١(反向)

最佳答案

感谢大家,使用以下代码解决了这个问题:

String str = "1234-5678-9101";

char[] chars = {'٠','١','٢','٣','٤','٥','٦','٧','٨','٩'};
StringBuilder builder = new StringBuilder();

for (int i = 0; i < str.length(); ++i) {
if (Character.isDigit(str.charAt(i))) {
builder.append(Chars[(int)(str.charAt(i))-48]);
} else {
builder.append("\u202A");
builder.append(str.charAt(i));
}
}

关于java - java中的破折号分隔符正在改变输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15998126/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com