JavaRush
AI Academy
new
Акция
Университет
Java FullStack
Python FullStack
AI Native Developer
new
Web FullStack
Обучение
Курсы
Задачи
Опросы
Игры
Помощь
График пинков
Стажировка
Сообщество
Пользователи
Форум
Чат
Статьи
Истории успеха
Активности
Отзывы
Подписки
Светлая тема
Вопрос
  • Отзывы
  • О нас
  • CS50
Начать
Начать обучение
Начать обучение
  • Все вопросы
JavaRush/Помощь по Java задачам/ОПЯТЬ ГРЕБАНЫЙ ВАЛИДАТОР КАБЕНИТСЯ , ЧТО НЕ ТАК ВСЕ РАБОТ...
Антон Никифоров
29 уровень
  • 03.03.2023
  • 201просмотров
  • 6комментариев

ОПЯТЬ ГРЕБАНЫЙ ВАЛИДАТОР КАБЕНИТСЯ , ЧТО НЕ ТАК ВСЕ РАБОТАЕТ!???? ввод трех строк " файлd жжа В эдожы jas" файлS В жжа В эдожы ja файлf жжа вид эдожы jas В

Вопрос по задаче Ищем нужные строки
Java Core,  9 уровень,  11 лекция
Обсуждается


Считать с консоли имя файла.
Вывести в консоль все строки из файла, которые содержат всего 2 слова из списка words.
Закрыть потоки.

Пример:
words содержит слова А, Б, В (количество слов в списке words может быть любым).

Строки:
В Б А Д //3 слова из words, не подходит
А Б А Д //3 слова из words, не подходит
Д А Д //1 слово из words, не подходит
Д А Б Д //2 слова - подходит, выводим
Д А А Д //2 слова - подходит, выводим

Требования:
  • Класс Solution должен содержать публичное статическое поле words типа List<String>, которое должно быть сразу проинициализировано.
  • Класс Solution должен содержать статический блок, в котором добавляются три или больше слов в список words.
  • Программа должна считывать имя файла с консоли (используй BufferedReader).
  • BufferedReader для считывания данных с консоли должен быть закрыт.
  • Программа должна считывать содержимое файла (используй FileReader).
  • Поток чтения из файла (FileReader) должен быть закрыт.
  • Программа должна выводить в консоль все строки из файла, которые содержат всего 2 слова из списка words.
....
package com.javarush.task.task19.task1922; import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.List; public class Solution { public static List<String> words = new ArrayList<String>(); static { words.add("файл"); words.add("вид"); words.add("В"); } public static void main(String[] args) throws IOException { BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); String name = reader.readLine(); reader.close(); BufferedReader reader1 = new BufferedReader(new FileReader(name)); while (reader1.ready()) { String s5 = reader1.readLine(); String s= s5.toString(); // System.out.println(s); String []strings = s.split(" "); int count = 0; String s1 = ""; for (int i=0; i<strings.length; i++){ if(strings[i].equals(words.get(0))||strings[i].equals(words.get(1))||strings[i].equals(words.get(2))){ count++; s1+=strings[i]+" ";} } if(count==2){ System.out.println(s1); }else continue; } reader1.close(); } }
0
Комментарии (6)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Антон Никифоров
Уровень 29
3 марта 2023, 08:03
ввожу 3 строки 1. файлd жжа В эдожы jas 2. файлS В жжа В эдожы ja 3. файлf жжа вид эдожы jas В вывод правильный!! В В вид В что не так
0
hidden #598481
Уровень 27
3 марта 2023, 08:08
Вывести в консоль все строки из файла, которые содержат всего 2 слова из списка words. Читай внимательно. Строка содержит два слова из файла? Выводишь всю строку.
0
hidden #598481
Уровень 27
3 марта 2023, 08:09
Кроме того, список words может быть любой длины, учти.
0
Антон Никифоров
Уровень 29
3 марта 2023, 09:34
а.. а..а?!😱
0
Антон Никифоров
Уровень 29
3 марта 2023, 09:34
Спасибо!!
0
Антон Никифоров
Уровень 29
3 марта 2023, 10:20
СПАСИБО ВСЕ СРАБОТАЛО!!! while (reader1.ready()) { String s5 = reader1.readLine(); String s= s5.toString(); String []strings = s.split(" "); int count = 0; for (int i=0; i<strings.length; i++) { if (map.containsKey(strings[i])) { count++; } }
0
Обучение
  • Курсы программирования
  • Регистрация
  • Курс Java
  • Помощь по задачам
  • Цены
Сообщество
  • Пользователи
  • Статьи
  • Форум
  • Чат
  • Истории успеха
  • Активности
Компания
  • О нас
  • Контакты
  • Отзывы
  • FAQ
  • Поддержка
JavaRushJavaRush — это интерактивный онлайн-курс по изучению Java-программирования c нуля. Он содержит 1200 практических задач с проверкой решения в один клик, необходимый минимум теории по основам Java и мотивирующие фишки, которые помогут пройти курс до конца: игры, опросы, интересные проекты и статьи об эффективном обучении и карьере Java‑девелопера.
Подписывайтесь
Язык интерфейса
Русский
English Українська
"Программистами не рождаются" © 2026 JavaRush
MastercardVisa
"Программистами не рождаются" © 2026 JavaRush