我有以下代码将特定的字符串字符映射到字母:
String a = "94466602777330999666887770223377778077778 883 336687777";
String[] tokens = a.split("(?<=(.))(?!\\1)");
Map<String, String> hmap = new HashMap<String, String>();
hmap.put("2", "A");
hmap.put("22", "B");
hmap.put("222", "C");
hmap.put("3", "D");
hmap.put("33", "E");
hmap.put("333", "F");
hmap.put("4", "G");
hmap.put("44", "H");
hmap.put("444", "I");
hmap.put("5", "J");
hmap.put("55", "K");
hmap.put("555", "L");
hmap.put("6", "M");
hmap.put("66", "N");
hmap.put("666", "O");
hmap.put("7", "P");
hmap.put("77", "Q");
hmap.put("777", "R");
hmap.put("7777", "S");
hmap.put("8", "T");
hmap.put("88", "U");
hmap.put("888", "V");
hmap.put("9", "W");
hmap.put("99", "X");
hmap.put("999", "Y");
hmap.put("9999", "Z");
hmap.put("1", ".");
hmap.put("0", " ");
在做HashMap之后,我想返回一个字符串,将我以前的字符串“94466602777330999666887770223377778077778 883 336687777”转换为“谁是你最好的学生”
答案 0 :(得分:2)
正如您所提到的,您已经将输入分为字符串数组。
StringBuilder builder = new StringBuilder();
for (String s: tokens) {
builder.append(hmap.get(s));
}
String result = builder.toString();
答案 1 :(得分:0)
您可以使用StringBuilder类来形成String。