显示字母表时自定义位数

customize the number of digits when shown the alphabet

显示所有5个字母组合的代码是:

for(char alphabet = 'A'; alphabet <= 'Z';alphabet++)
        for(char s = 'A'; s <= 'Z';s++)
            for(char b = 'A' ; b <= 'Z';b++)
                for(char f = 'A'; f <= 'Z'; f++)
                    for (char d = 'A'; d <= 'Z'; d++)
                        System.out.println(alphabet+""+s+""+b+""+f+ ""+d );

但我的老板想要一个版本,您可以在其中自定义显示的字母数,例如,如果他输入“3”,它应该显示 "aaa",如果他输入 5,它应该显示 "aaaaa" 以及 a 到 z 的所有组合。

递归!:

public static class Main {

    public static void main() {
        printAll("",3);
    }

    static void printAll(String prefix, int n) {
        if( n==0 ) {
            System.out.println(prefix);
        } else {
            for(char c='A'; c<= 'Z'; c++) {
                printAll(prefix+c, n-1);
            }
        }
    }
}

小心!只有 运行 具有 small n!