0
我想讓它每次調用hiddenWord();
時都顯示一個單詞提示,取決於所嘗試的猜測字母,所以沒有猜測,你會得到這樣的"____"
,如果這個詞是例如邁克和我猜'我'和'e'它會顯示"_i_e"
。 我已經在這裏呆了很長一段時間,我無法用頭裹着它。如果問題是非常基本的,我仍然是一個很抱歉的新手。試圖製作一種顯示遊戲猜測字母的方法Hang Man(Java)
我會發布我試圖做的方法,而無需程序的其餘部分,如果需要我可以發佈其餘的。這種方法有兩個主要問題。
1-我需要至少有3個字符,所以在它的當前狀態是「」它不起作用。這就是爲什麼在下面添加3個空格。否則我會得到一個我不明白的索引錯誤。
2-第二個問題是如何正確分配"_"
當我沒有找到這封信時,我似乎在做太多破折號。
public String hiddenWord() {
int i = 1;
int j = 1;
this.guessedLetters += " ";
char c = this.word.charAt(i);
char d = this.guessedLetters.charAt(j);
while (i <= this.guessedLetters.length()-1) {
while (j <= this.word.length()-1) {
if (c == d) {
this.hiddenWord += c;
j++;
}
else {
this.hiddenWord += "_";
j++;
}
}
i++;
}
return this.hiddenWord;
}
}
1.指數應該從0開始,而不是1 2.您需要復位j對於i的每個迭代上面的類的一個使用例。 3.當我改變時,需要查找c,並且當j改變時,也需要d。他們只會受到分配時i和j值的影響。 4.你應該迭代外循環中的單詞長度和內循環中的猜測字母。 5.您可能可以使用STring replace()或replaceAll()函數找到替代解決方案 – samgak
用戶每次只能猜測一個字母? – Dummy
是的。一次只有一封信。 – Budaika