JavaRush
AI Academy
Акция
Университет
Java FullStack
Python FullStack
AI Native Developer
new
Web FullStack
Обучение
Курсы
Задачи
Опросы
Игры
Помощь
График пинков
Стажировка
Сообщество
Пользователи
Форум
Чат
Статьи
Истории успеха
Активности
Отзывы
Подписки
Светлая тема
Вопрос
  • Отзывы
  • О нас
  • CS50
Начать
Начать обучение
Начать обучение
  • Все вопросы
JavaRush/Помощь по Java задачам/Почему не принимает? Проверял с помощью файла, все выводи...
Anonymous #3255136
34 уровень
  • 05.09.2023
  • 214просмотров
  • 2комментариев

Почему не принимает? Проверял с помощью файла, все выводит как требуется.

Вопрос по задаче Хуан Хуанович
Java Core,  9 уровень,  11 лекция
Решен


В метод main первым параметром приходит имя файла.
В этом файле каждая строка имеет следующий вид:
имя день месяц год
где [имя] - может состоять из нескольких слов, разделенных пробелами, и имеет тип String.
[день] - int, [месяц] - int, [год] - int
данные разделены пробелами.

Заполнить список PEOPLE используя данные из файла.
Закрыть потоки.

Пример входного файла:
Иванов Иван Иванович 31 12 1987
Вася 15 5 2013

Требования:
  • Класс Solution должен содержать публичную константу PEOPLE типа List<Person>, которая должна быть сразу проинициализирована.
  • Программа НЕ должна считывать данные с консоли.
  • Программа должна считывать содержимое файла (используй FileReader).
  • Поток чтения из файла (FileReader) должен быть закрыт.
  • Программа должна заполнить список PEOPLE данными из файла.
  • Программа должна правильно работать с двойными именами, например Анна-Надежда.
....
package com.javarush.task.task19.task1921; import java.util.Date; public class Person { private String name; private Date birthDate; public Person(String name, Date birthDate) { this.name = name; this.birthDate = birthDate; } public String getName() { return name; } public Date getBirthDate() { return birthDate; } }
0
Комментарии (2)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Денис Enterprise Java Developer
5 сентября 2023, 14:11
Разбей по пробелу, последние три элемента это дата, всё остальное имя, собирай через String.join
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd MM yyyy");
String name = String.join(" ",
        Arrays.copyOfRange(split, 0, split.length - 3));
Date date = simpleDateFormat.parse(String.join(" ",
        Arrays.copyOfRange(split, split.length - 3, split.length)));
0
Anonymous #3255136
Уровень 34
7 сентября 2023, 16:12
Спасибо!
0
Обучение
  • Курсы программирования
  • Регистрация
  • Курс Java
  • Помощь по задачам
  • Цены
Сообщество
  • Пользователи
  • Статьи
  • Форум
  • Чат
  • Истории успеха
  • Активности
Компания
  • О нас
  • Контакты
  • Отзывы
  • FAQ
  • Поддержка
JavaRushJavaRush — это интерактивный онлайн-курс по изучению Java-программирования c нуля. Он содержит 1200 практических задач с проверкой решения в один клик, необходимый минимум теории по основам Java и мотивирующие фишки, которые помогут пройти курс до конца: игры, опросы, интересные проекты и статьи об эффективном обучении и карьере Java‑девелопера.
Подписывайтесь
Язык интерфейса
Русский
English Українська
"Программистами не рождаются" © 2026 JavaRush
MastercardVisa
"Программистами не рождаются" © 2026 JavaRush