java123转为一二三_用JAVA刷算法的常见问题及解决之道 系列(一)
时间: 2024-03-20 17:42:54 浏览: 10
将"java123"转为"一二三"可以使用Java中的HashMap来实现,具体代码如下:
```
import java.util.HashMap;
public class NumberConverter {
public static void main(String[] args) {
String input = "java123";
String output = convert(input);
System.out.println(output); // 输出:一二三
}
public static String convert(String input) {
HashMap<Character, String> map = new HashMap<>();
map.put('0', "零");
map.put('1', "一");
map.put('2', "二");
map.put('3', "三");
map.put('4', "四");
map.put('5', "五");
map.put('6', "六");
map.put('7', "七");
map.put('8', "八");
map.put('9', "九");
StringBuilder sb = new StringBuilder();
for (char c : input.toCharArray()) {
if (Character.isDigit(c)) {
sb.append(map.get(c));
}
}
return sb.toString();
}
}
```
以上代码首先创建了一个HashMap对象,将数字0到9与中文数字的对应关系存储在HashMap中。接着使用StringBuilder遍历输入字符串中的每一个字符,如果该字符是数字,则从HashMap中获取对应的中文数字,并添加到StringBuilder中。最后将StringBuilder转换为字符串并返回即可。
当然,上述代码只能转换数字,如果需要将其他字符转换为中文,可以添加相应的映射关系到HashMap中。