我正在编写一个Telephone类,它有一个名为getDigits的方法,它接受一个String参数,如果你用老式的方式键入这些字母,它将返回手机上显示的数字。 Ex-键入" CAT"将返回227.我编写了以下代码并且它有效,但我想知道是否有其他人有更好的想法去做/更复杂的。我正在学习数据抽象/枚举等等,感觉我应该使用它们,但我无法弄清楚如何在这里实现它。任何帮助表示赞赏:
public int getDigits(String test){
String result = "";
String param = test.toUpperCase();
for(int i = 0; i<param.length(); i++){
String s = Character.toString(param.charAt(i));
if(s.equals("A") || s.equals("B") || s.equals("C")){
result += 2;
}
else if(s.equals("D") || s.equals("E") || s.equals("F")){
result += 3;
}
else if(s.equals("G") || s.equals("H") || s.equals("I")){
result += 4;
}
else if(s.equals("J") || s.equals("K") || s.equals("L")){
result += 5;
}
else if(s.equals("M") || s.equals("N") || s.equals("O")){
result += 6;
}
else if(s.equals("P") || s.equals("Q") || s.equals("R") || s.equals("S")){
result += 7;
}
else if(s.equals("T") || s.equals("U") || s.equals("V")){
result += 8;
}
else if(s.equals("W") || s.equals("X") || s.equals("Y") || s.equals("Z")){
result += 9;
}
}
return Integer.parseInt(result);
}