我似乎很亲密,但是我似乎找不到一种打印原始字母的方法。使用我当前的代码,如果我输入“ e”,我想打印出一个b c d e。但是,我的代码仅打印出b c d,而不打印出e。我知道这是因为'c'被减去是因为它可以打印出e,但是我不知道如何在从e到反向打印的同时将其打印出来。
public static void letters(char c)
{
if (c > 'a')
{
letters(--c);
} else {
return;
}
System.out.print(c + " ");
}
答案 0 :(得分:4)
您递减c
,然后最终打印它,这意味着您将从不打印原始值。将您的代码更改为
public static void letters(char c) {
if (c > 'a') {
letters((char)(c - 1)); // do not decrement c
} // no else block since we dont need it
System.out.print(c + " ");
}