如何将数字转换为字母?
How can I convert numbers into letters?
我有这段代码,它为我生成了一个二维矩阵,其中第一列有 4 个数字之一,第二列有 4 个数字之一(但两个值不能相同)。但是现在,我想将数字转换为字母 - 所以我想要字母 a、b、c 或 d 而不是数字 1、2、3 或 4。我知道我必须通过 ascii 编码以某种方式解决这个问题,但我不知道该怎么做。
是的,我知道,Whosebug 中确实有这个问题,但我不知道如何在我的 class 中实现该问题的方法。这两行代码对我没有帮助,因为我有这段特定的代码,而且我对 java 或一般编码来说真的很陌生。
public class scratch{
public static void main(String[] args) {
Number[][] generator = new Number[10][2];
for (int i = 0; i < generator.length; i++) {
for (int j = 0; j < generator[i].length; j++) {
if (j == 0) {
double x = Math.random();
generator[i][j] = x < 0.25 ? 1 : (x < 0.5 ? 2 : (x < 0.75 ? 3 : 4));
} else {
do {
double y = Math.random();
generator[i][j] = y < 0.25 ? 1 : (y < 0.5 ? 2 : (y < 0.75 ? 3 : 4));
} while (generator[i][j].equals(generator[i][0]));
}
System.out.print(generator[i][j] + " ");
}
System.out.println();
}
}
}
char
其实就是int
,可以在char
和int
之间使用-
和+
:
// 1 - a; 26 - z
public static char convertToLetter(int num) {
return (char)('a' - 1 + num);
}
我有这段代码,它为我生成了一个二维矩阵,其中第一列有 4 个数字之一,第二列有 4 个数字之一(但两个值不能相同)。但是现在,我想将数字转换为字母 - 所以我想要字母 a、b、c 或 d 而不是数字 1、2、3 或 4。我知道我必须通过 ascii 编码以某种方式解决这个问题,但我不知道该怎么做。
是的,我知道,Whosebug 中确实有这个问题,但我不知道如何在我的 class 中实现该问题的方法。这两行代码对我没有帮助,因为我有这段特定的代码,而且我对 java 或一般编码来说真的很陌生。
public class scratch{
public static void main(String[] args) {
Number[][] generator = new Number[10][2];
for (int i = 0; i < generator.length; i++) {
for (int j = 0; j < generator[i].length; j++) {
if (j == 0) {
double x = Math.random();
generator[i][j] = x < 0.25 ? 1 : (x < 0.5 ? 2 : (x < 0.75 ? 3 : 4));
} else {
do {
double y = Math.random();
generator[i][j] = y < 0.25 ? 1 : (y < 0.5 ? 2 : (y < 0.75 ? 3 : 4));
} while (generator[i][j].equals(generator[i][0]));
}
System.out.print(generator[i][j] + " ");
}
System.out.println();
}
}
}
char
其实就是int
,可以在char
和int
之间使用-
和+
:
// 1 - a; 26 - z
public static char convertToLetter(int num) {
return (char)('a' - 1 + num);
}