Java Hangman代码,字符数组

Java Hangman代码,字符数组,java,arrays,char,Java,Arrays,Char,如果你们中有人能在这段代码中指出这个问题,我会很高兴:) 这正是我所反对的方法 public static char[] checkMethod(char[] checkArray, char letter) { boolean flag = false; for(int i=0; i<checkArray.length; i++) { if(checkArray[i] == letter) { check

如果你们中有人能在这段代码中指出这个问题,我会很高兴:) 这正是我所反对的方法

public static char[] checkMethod(char[] checkArray, char letter)
{
    boolean flag = false;

    for(int i=0; i<checkArray.length; i++)
    {

        if(checkArray[i] == letter)
        {
            checkArray[i] = letter;
            flag = true;
        }
    }

    if(flag == true)
        System.out.println("Good job!");
    else 
        System.out.println("Aww.. Try again");

    return checkArray;
}
publicstaticchar[]checkMethod(char[]checkArray,charletter)
{
布尔标志=假;

对于(int i=0;i),您应该有2个数组:1个空格填充,一个与实际的单词相对应。当前你正在检查空白数组,它永远不会=字母。

你正在比较校验数组[i]==字母,如果是真,替换校验数组[i]。通过字母,但它们已经相等。你需要传递你正在检查的单词

public static char[] checkMethod(char[] checkArray, char[] wordArray, char letter)
{
   boolean flag = false;

   for(int i=0; i<checkArray.length; i++)
   {

      if(wordArray[i] == letter)
      {
          checkArray[i] = letter;
          flag = true;
      }
   }

   if(flag == true)
       System.out.println("Good job!");
   else 
       System.out.println("Aww.. Try again");

   return checkArray;
}
publicstaticchar[]checkMethod(char[]checkArray,char[]wordArray,charletter)
{
布尔标志=假;

对于(inti=0;i如果我理解正确,则需要为函数添加一个参数(包含单词)

说字符串

if(word.charAt(i) == letter)
{
    checkArray[i] = letter;
    flag = true;
}

如果checkArray包含“-----”,您将如何测试字母是否在单词中?OMG O_O!!我的逻辑有缺陷。我需要原始数组。谢谢!如果
checkArray[I]
包含
“----”
,唯一的时间
If(checkArray[I]==letter)当
字母
等于
-
时,将返回
true
,因此
检查数组
将保持原来的状态