Код, приведенный ниже, предназначен для подсчета количества раз, когда слова в списке y встречаются либо в документе через FileReader
, либо в списке x. В конце концов, я хочу, чтобы список y также был импортированным документом, но когда я запускаю код в документе, он либо дает мне ложный счет, либо вообще не рассчитывает. Что происходит?Программа подсчета слов не работает
Также файлы составляют блокнот. Я пользуюсь окнами
import java.io.BufferedReader;
import java.io.FileReader;
import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class test {
@SuppressWarnings("resource")
public static void main(String[] args) throws Exception {
don w = new don();
List<Integer> ist = new ArrayList<Integer>();
// List<String> x =Arrays.asList
// ("is","dishonorable","dismal","miserable","horrible","discouraging","distress","anguish","mine","is");
BufferedReader in = new BufferedReader(new FileReader("this one.txt"));
String str;
List<String> list = new ArrayList<String>();
while ((str = in.readLine()) != null) {
list.add(str);
// System.out.println(list);
List<String> y = Arrays.asList("Hello", "the", "string", "is", "mine");
for (String aY : y) {
int count = 0;
for (String aX : list) {
if (aY.contains(aX)) {
count++;
}
}
ist.add(count);
// no need to reset the count
}
int g = ist .stream()
.mapToInt(value -> value)
.sum();
System.out.println(g);
}
}
}
Что должен делать объект 'don'. Вы создаете экземпляр, покупаете, после этого вы ничего не делаете. Я не понимаю, почему вы храните 'count' на' ArrayList' – jpuriol
, но дон является частью программы, которую я хотел вынести, задавая этот вопрос, потому что это не связано. Я храню счет, потому что я хочу делать другие вещи позже с номером. –
Ваш код довольно запутанный, но я думаю, проблема в том, что вы сравниваете строку текста из документа со списком строк. Поэтому он никогда не будет соответствовать – Safirah