當使用遞歸時,我意識到我不知道return語句是如何工作的。當target.contains(key)返回true時,它會停止並返回true,還是會因爲下面的行而退出並返回false?方法的先前迭代是否完成,以便返回false?返回語句如何在遞歸中工作?
該程序創建密碼,並調用此方法來檢查密碼是否包含必需字段之一,如大寫字母,符號或數字。它被稱爲4個獨立的資源,然後用它們告訴程序保存密碼或創建一個新密碼,如果它不符合要求的標準。我已經完成了這個程序以獲得更多有趣的內容來刷新我對Java的記憶,這不是任何人都可以使用的真正的程序。
private static boolean containsKeyword(String target, String source, int placement){
String key = String.valueOf(source.charAt(placement));
if(target.contains(key))
return true;
if(placement==0)
return false;
containsKeyword(target, source, placement-1);
return false;
}
它的工作原理與非遞歸場景中的完全相同。 – 2014-10-11 19:01:32
可能的重複[如何比較Java中的字符串?](http://stackoverflow.com/questions/513832/how-do-i-compare-strings-in-java) – azurefrog 2014-10-11 19:03:23
'a'和'b'是字符串,並且您正在使用比較運算符。 – 2014-10-11 19:05:27