所以我正在为我的 Java 编程类(class)做一个实验。我正在 jedit 上使用控制台玩刽子手游戏。他们一次只能猜一个字母。一开始,只显示星号来表示字母的数量。例如,如果这个词是大象,它将显示*********。一旦他们猜到了字母 e,就会显示 e*e*****。我创建了一个方法,它返回一个字符数组,该数组是基于单词中字母数量的星号。我不知道如何用正确的字母替换星号。请帮忙!
public static char[] asterisk(String x) {
char[] word = new char[x.length()] ;
for( int i=0; i< x.length(); i++) {
word[i] = '*' ;
}// end for loop
return word ;
} // end asterisk method
最佳答案
我们声明两个字符串。一个是单词,另一个是一串星号。
String word = "hello";
String obfuscatedWord = "";
for (int i = 0; i < word.length; i++)
obfuscatedWord += "*"
我们从用户那里得到了猜测。我们传入混淆的单词,因为用户需要它来进行猜测。
char guess = getGuessFromUser(obfuscatedWord);
我们将单词、混淆后的单词和猜测传递给函数并返回一个新的字符串。
static String replaceWithGuess(String word, String obfuscatedWord, char guess) {
// Pseudocode here. You solve the rest.
for i = 0 to word length:
if word[i] equals guess:
replace obfuscatedWord[i] with guess
return obfuscatedWord;
}
现在您只需增加猜测次数,确定用户是赢了还是输了,等等。
关于java - 将字符串转换为字符数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23092996/