我正在尝试使用String方法制作一个hang子手游戏,但是,我无法用猜出的正确字母替换“-”,关于我的问题的说明说我需要将破折号与猜对了。
这是我到目前为止用于检查字母是否在单词中的方法的代码
public static String reveal(String word, String guess)
{
String dashprints = "-", wholeword=" ";
for (int index=0; index<= word.length();index++)
{
if(index==word.indexOf(letters))
{
return dashprints;
}
else
{
dashprints=letters;
}
wholeword= dashprints+ wholeword;
}
return wholeword;
游戏中的单词是: 图形
,初始输出是这样:
“ ---------”
所需的输出是:
“ g -------”
但是,我现在得到的输出就是这样:
“-”
答案 0 :(得分:0)
希望这对您有用。
public static String reveal(String word, String guess) {
char[] guessChars = guess.toCharArray();
ArrayList<Character> missedChars = new ArrayList<Character>();
char[] out = new char[word.length()];
for (int i = 0; i < out.length; i++) {
out[i] = '_';
}
if (word.length() == guess.length()) {
for (int index = 0; index < word.length(); index++) {
int sts = word.indexOf(guessChars[index]);
if (sts != -1)
out[sts] = guessChars[index];
else
missedChars.add(guessChars[index]);
}
}
System.out.println("Missed Character: " + missedChars.toString());
return new String(out);
}
您可以将out[i] = '_';
更改为out[i] = '-';