女大学生的程序媛之路:才学java为什么会这样哇

才学java没多久,我想在这个方法调用之前写的boolean isinsecretword,搜索后发现方法只能申明局部变量,那我想在for这里使用isinsecretword要咋么办呢😢

img

img

很明显,你的guessWord是一个方法,在java中,方法是不允许在方法内部定义的。大致如下,就不写全了,自己补充一下吧。

public class Demo {

    // 定义一个成员变量
    private String secretWord = "123";

    public String guessWord(String wordToGuess) {
        for (int i = 0; i < wordToGuess.length(); i++) {
            isInSecretWord(wordToGuess.charAt(i));
        }
        return null;
    }

    public boolean isInSecretWord(char letter) {
        // 这里就可以使用成员变量secretWord
        secretWord.charAt(0)
        return false;
    }
    // 入口
    public static void main(String[] args) {
        String word = "123";
        System.out.println(new Demo().guessWord(word));
    }
}

public class Demo {

// 定义一个成员变量
private String secretWord = "111";

public String guessWord(String wordToGuess) {
    for (int i = 0; i < wordToGuess.length(); i++) {
        isInSecretWord(wordToGuess.charAt(i));
    }
    return null;
}

public boolean isInSecretWord(char letter) {
    secretWord.charAt(0)
    return false;
}

public static void main(String[] args) {
    String word = "111";
    System.out.println(new Demo().guessWord(word));
}

}

当然是把它定义为全局变量呀