2 回答
TA贡献1843条经验 获得超7个赞
您没有得到正确的输出,因为您正在用作函数的返回类型。您应该使用int作为返回类型而不是char,因为在开关情况下,您正在与字符进行比较并返回数字值因此将代码替换为以下代码,这将起作用:chargetDigit(..)
public int getDigit(char letter) throws Exception{
switch (letter) {
case 'a': case 'b': case 'c': case '2':
return 2;
case 'd': case 'e': case 'f': case '3':
return 3;
case 'g': case 'h': case 'i': case '4':
return 4;
case 'j': case 'k': case 'l': case '5':
return 5;
case 'm': case 'n': case 'o': case '6':
return 6;
case 'p': case 'q': case 'r': case 's': case '7':
return 7;
case 't': case 'u': case 'v': case '8':
return 8;
case 'w': case 'x': case 'y': case 'z': case '9':
return 9;
default:
throw new IllegalArgumentException("Must be a letter or number on the Alpha-Numeric Keypad.");
}
}
添加回答
举报