我沒有太早開始編程,現在我需要一種方法來生成一個數組,其中包含前一個字符後面的字符。它應該從'A'開始,然後是'1'的B等。困難的部分是讓'Z'來到'AA'後。在Java中像電子表格那樣遞增字符'Z'
我想出了:
public static String[] charArray(int length)
{
String[] res = new String[length];
for(int i = 0; i < length; i++)
{
String name = "";
int colNumber = i;
while(colNumber > 0)
{
char c = (char) ('A' + (colNumber % 26));
name = c + name;
colNumber = colNumber/26;
}
res[i] = name;
}
return res;
}
也能正常工作字母表中的第26個字母,但它產生的 「... Y,Z,BA,BB,BC ...」,而不是「... Y,Z,AA,AB,AC ...」
有什麼不對?或者有沒有更高效或更簡單的方法來做到這一點?
提前致謝!
要弄清楚爲什麼得到輸出結果,你需要做的就是在幾分鐘內考慮變量。也許打印一些額外的信息。 – keyser