Я пытаюсь получить список самых длинных слов из каждой строки в блоке текста. Я не могу получить информацию для печати с моей основной страницы, которая находится в файле processing.class. Информация обрабатывается в Tools.class. и есть также Counters.class, который задействован, но он неизменен.Зачем мне это предупреждение компилятора?
Однако, это дает мне это предупреждение: The value of the local variable longestWords is not used
в моем встречном коде, на линии, где я объявляю longestWords =h;
. Почему это и как я могу это исправить?
Это мой код:
(обработка)
longestWords = stat.getLongestWords();
for(i = 0; i < longestWords.size(); i++){
System.out.print(longestWords.get(i));
}
Ошибка брошено: Исключение в потоке "главный" java.lang.NullPointerException в deol5210_a1.Processing.main (Processing.java:66)
, который указывает на для (я = 0; я < longestWords.size(); я ++) { (Инструменты)
}else {
currentWord = lineScanner.next();
if(currentWord.contains("$")){
currentWord.replace("$", "");
moneySpent += Double.parseDouble(currentWord.replace("$", ""));
}else if (currentWord.length() > lineLongestWord.length()){
lineLongestWord = currentWord;
}
if(currentWord.length() > longestWord.length()){
longestWord = currentWord;
lineLongestWord = currentWord;
wordCount++;
} else {
wordCount++;
}
(счетчики)
public ArrayList<String> getLongestWords(){
return longestWords;
}
public Counters(int a, double b, int c, int d, double e, double f, String g, ArrayList<String> h){
lineCount = a;
avgWordCount = b;
wordCount = c;
purchaseCount = d;
moneySpent = e;
avgSpent = f;
longestWord = g;
ArrayList<String> longestWords = h;
}
Что вы думаете? – shmosel
Это просто предупреждение о том, что вы никогда не используете эту переменную. – Gatusko
Я не могу получить содержимое массива для печати в моем классе обработки. Это дает мне исключение nullpointer. Я заметил, что я печатал его неправильно. Я изменил код печати, чтобы использовать longestWords.get (i), но теперь он бросает исключение NullPointerException. –