我正在做什麼應該是一個相對簡單的Java遞歸問題,但我似乎無法找到一個簡單的,單方法的解決方案。遞歸java星號
我試圖以遞減之後升序打印出星號,這樣當用戶在3通過例如,打印出來會是這樣的:
*
**
***
**
*
編輯:謝謝你的幫助的@dasblinkenlight這已演變爲:
public void patternMaker(int start, int max, int direction){
if(start == 0){
return;
}
for(int i = 0; i < start; i++){
System.out.print("*");
}
System.out.println();
if(start == max){
direction = -1;
}
patternMaker(start + direction, max, direction);
現在,它打印星號的正確數量,並以正確的順序:
*
**
***
**
*
感謝大家的幫助!
Psssst,答案有方向,但如果您遇到問題,或只是好奇,我把一個解決方案在http://ideone.com/StJRS :) – 2012-07-26 04:35:32
@RayToal,感謝幫助,但我不確定他是否希望我們使用Character包裝類或導入任何特定的包。 – ohayon 2012-07-26 14:53:30
確實,那只是爲了好玩 - *眨眼*很高興你注意到!當然,使用循環 - 肯定比我在那裏扔的單行恐怖更快,更容易理解。 :) – 2012-07-26 15:38:25