Мне очень сложно решить, когда ставить статические методы или нет. Мне сказали, чтобы сделать глобальную переменную LinkedList:Определение статического метода с глобальной переменной LinkedList
public static LinkedList list = new LinkedList();
Теперь, я написал метод, называемый read()
читать слова из текстового файла. Затем я написал другой метод preprocessWord(word)
, чтобы проверить, начинаются ли эти слова с константы, чтобы изменить их на нижний регистр. Если у них есть эти условия, то я добавить их в список LinkedList:
public void read(){
....
while((nextLine = inFile.readLine())!= null){
tokens = nextLine.trim().split("\\s+");
for(int i = 0; i < tokens.length; i++){
word = tokens[i];
word = preprocessWord(word);
list.append(word);}
}
}
...
}//read
Однако, когда я пытаюсь вызвать read()
от основного метода;
public static void main(String[] args) {
read();
System.out.println(list);
}//main
ошибка, я не могу сделать статическую ссылку на нестатической метод read()
, поэтому я попытался изменить мои методы read()
и preprocessedWord()
статических методов, но затем words
не обновляются в preprocessedWord()
как они полагаю. Я действительно не понимаю, где использовать статику, а где нет, может кто-нибудь объяснить, где я ошибаюсь в своих мыслях?
Потому что ваш метод 'read' не является статическим. – Antoniossss