显示字母表时自定义位数

时间:2016-08-03 12:24:26

标签: java 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。

1 个答案:

答案 0 :(得分:2)

递归:

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);
            }
        }
    }
}

小心!仅使用值n!

运行