我有一个功课问题我可能会过度思考,我需要反转Hello.使用递归,以便最终结果没有.
我目前的方法是:
public void foo(){
Scanner scan = new Scanner(system.in);
char c = scan.nextChar();
if (c!='.')
foo();
System.out.print(c);
}
Run Code Online (Sandbox Code Playgroud)
这似乎输出相反,但它仍然有..有人能指出我正确的方向摆脱这段时期吗?
P.P*_*.P. 11
将打印件放在支架内:
if (c!='.') {
foo();
System.out.print(c);
}
Run Code Online (Sandbox Code Playgroud)
使用'.'而不是"."因为你比较a char,而不是String:
public void foo(){
Scanner scan = new Scanner(system.in);
char c = scan.nextChar();
if (c != '.') {
foo();
System.out.print(c);
}
}
Run Code Online (Sandbox Code Playgroud)
另请注意,如果是a String,则需要使用equals进行比较.==或者!=用于比较原始类型,例如char.