我需要获取字符串randomWord以通过getWord()返回
private static void setUpDictionary() throws IOException
{
Scanner fileScan;
String[] words = new String[25];
fileScan = new Scanner (new File("dictionary.dat"));
int n=0;
while (fileScan.hasNext())
{
words[n] = fileScan.next();
n++;
}
int rand = (int) (Math.random()*n);
String randomWord = words[rand];
System.out.println("TEST THIS IS RANDOM WORD ..." + randomWord);
fileScan.close();
}
//Returns random word from dictionary array
private static String getWord()
{
String word = randomWord ;
return word;
}
任何想法如何使它起作用?
唯一的错误来自
String word = randomWord ;
因为randomWord不是getWord()中的字符串。
那么,如何使randomWord可用于getWord()?
编辑:
我不能更改任何现有的私有,它们必须保持私有。
最佳答案
您正在randomWord
方法中将setUpDictionary()
设置为新的String对象。相反,它应该是类的成员属性,以便可以在类范围内的其他方法中引用它。
例:
private static String randomWord;
private static void setUpDictionary() throws IOException {
// ...
randomWord = words[rand];
// ...
}
private static String getWord() {
return randomWord;
}
关于java - 用Java传递私有(private)字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16505371/