如果我有数字 1,并且它是用户提交的,是否会有一个 java 函数将它变成 A?与B类似,我如何将其变成2(相反)?
问问题
134 次
4 回答
2
你可以创建一个包含所有字母的数组,然后得到这样的字母:
数组字母表
int inputNumber = -input-
有了这个,你会收到你的信:
alphabet[inputNumber-1]
于 2015-04-10T20:52:51.360 回答
0
每个字符都有一个关联的数值。大写字母与小写字母不同,符号也有数值。要查找 char 的数值,只需检查 ASCII 表。或使用:
char thisChar = 'A';
int charValue = (int) thisChar; // returns 65
char thisChar = 'a';
int charValue = (int) thisChar; // returns 97
长话短说,摩根诺的评论是正确的。在这种情况下,正确的行是:
// save user input as int number
char letter = (char)(number + 64);
于 2015-04-10T21:10:32.770 回答
0
您需要使用 ASCII 值。例如,A 的值为 65,B 的值为 66,依此类推。因此,您将进入输入并添加 64 以获取相应的字符。我建议通过 ASCII 值。
于 2015-04-10T20:54:26.490 回答
0
这可能会解决您的问题:
public static void main(String[] args) {
System.out.println("1: " + numberToLetter(1));
System.out.println("26: " + numberToLetter(26));
System.out.println("a: " + letterToNumber('a'));
System.out.println("z: " + letterToNumber('z'));
}
public static char numberToLetter(int number) {
return (char)((byte)number+(byte)96);
}
public static byte letterToNumber(char letter) {
return (byte)((byte)letter - (byte)96);
}
希望能帮助到你...
于 2015-04-10T20:59:11.837 回答