Не компилируется задача про котиков

  • 5
  • Недоступна
Первый постулат межгалактической железной дороги гласит: если у котов возникли проблемы, бросайте всё, и решайте их. Ибо котики по природе своей не должны иметь проблем. Итак, у нас есть программа, которая выводит данные про котов на экран после введения их с клавиатуры. Но в ней что-то не так, и она не компилируется. Исправьте ошибку!
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (260)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Arsen Java Developer
25 ноября, 21:22
Задача то легкая, но вот чем отличается name == null и name.isEmpty ?
name == null || name.isEmpty()
Toxa 9 уровень, Санкт-Петербург
18 ноября, 12:20
Интересно, программисты из JavaRush сначала main заполняют,а потом классы создают? Что ж у них все написано то не для людей. Логично наверно сначала описать класс,а потом уже main, нет?
Денис 11 уровень, Владимир
16 ноября, 19:32
кто ловит numberformatexception!!! все данные можно считывать как String, а парсить в int при передачи в конструтор. Прокатило
Arsen Java Developer
25 ноября, 21:24
String name = reader.readLine();
            if (name == null || name.isEmpty()) {
                break;
у меня такая ошибка была, если брикать while после объявления следующих переменных, а не именно имени
Сергей Воронов 8 уровень, Санкт-Петербург
суббота, 05:16
Знаете почему так?
Денис 11 уровень, Владимир
суббота, 05:30
То так? Если про мой коимент., то считываются строки , а коту надо передать числовые значения. И что бы не плодить новые переменные, можно строковые переменные age и weight перевести в число (спарсить) при создании кота.
Сергей Воронов 8 уровень, Санкт-Петербург
суббота, 06:16
Я имею ввиду почему именно в конструкторе? Я парсил при вводе и программа выдавала ошибку. Запарсил при передаче и все стало норм.
Денис 11 уровень, Владимир
суббота, 06:46
Тогда надо твой код смотреть
Сергей Воронов 8 уровень, Санкт-Петербург
суббота, 07:18
Зачем, если у нас одна и та же ошибка, которая решилась одинаковым способом? Я просто спросил, знаете ли вы почему так получилось. Мне самому интересно, я не понимаю.
Имя Фамилия 8 уровень, Москва
10 ноября, 10:26
Мдя,, слона-то я и не заметил.. Получаю в соуте нулевые параметры кота и долго думаю. А потом иду искать где же у меня в коде собственно ввод этих параметров и тут внезапно(!) - а вот и нигде. Удивительная история - ждать на выходе циферок, ввод которых кодом не предусмотрен..
Павел 17 уровень, Минск
30 октября, 13:19
Я, наоборот, сказал бы, что эта задача уровня Easy. По классу и конструктору сразу видно, каких параметров не хватает для передачи. Значит просто создаём и инициализируем их вводом с клавиатуры. Передаём. Всё.
Антон 9 уровень, Москва
29 октября, 19:52
Задача уровня Hard, а не Medium. Хотя я решил ее без подгляда подсказок, за полтора часа и с первой попытки, но сам не до конца понял, как решил.
Beverly 9 уровень, Ижевск
7 ноября, 09:03
Если не понял , значит не решил . Нужно было оставить до того момента , как поймешь, что делаешь и для чего.
Антон 9 уровень, Москва
8 ноября, 12:30
Спасибо за совет
Ilya 8 уровень, Самара
позавчера, 23:26
Р,ешил,а если что-то не понял,не заморачивайся на этом,потом постепенно поймешь, когда работать будешь
Никита Грицунов 8 уровень, Сочи
18 октября, 11:40
Тоже решил с подсказкой... Сначала все переменные считывал подряд.
Арсений Студент в СпбГМТу
18 октября, 08:29
Как необычно, если создаешь и вводишь данные до If с Break-ом, то программа не работает, а если после, то всё идеально по плану. Знающие всё и вся, можете объяснить почему?
Ksenia 18 уровень, Киев
7 ноября, 13:34
ты не хочешь больше добавлять котов, нажимаешь просто ентер. когда у тебя идет проверка в начале и вводят пустую строку, оно сразу выходит из цикла( думаю это и так понятно) когда же написано
String name = reader.readLine();
int age = Integer.parseInt(reader.readLine());
if (name == null || name.isEmpty()) {
    break;
}
прога записывает пустую строку в name, а потом ожидает от тебя число (age), если опять нажмешь ентер, прога попытается запихнуть строку в int == ошибка NumberFormatException == строка - это не число)
Арсений Студент в СпбГМТу
10 ноября, 07:29
Спасибо, сильно понятнее не стало(точнее стало, но ощущение будто эти правила еще с ассемблера взяты), но спасибо
Игорь Жуган 8 уровень
11 ноября, 12:45
не знаю как ты решал, но у меня программа работает если ввести данные до If с Break Я ввожу 4 переменных и проверяю ифом, что все они не пустые. Если есть пустые - брейк Елсе - создаю кота и добавляю в массив.
Виктор 11 уровень, Москва Expert
9 октября, 17:02
1. IDE сразу подсвечивает нам в чём проблема — создаётся кот, которому передают только одно имя. 2. Теперь смотрим на конструктор кота и понимаем, сколько ещё от нас требуется передать аргументов для корректного создания кота. 3. Дописываем по порядку ввод этих аргументов. 4. Да, программа срабатывает после 2 нажатии на энтер. 5. Конечно же всё получится! : ) -- Канал в телеге про Java и Android, в котором есть книги для скачивания, статьи, видеоуроки, чат для обмена знаниями и моральной поддержки : ) Давайте учиться вместе: @LetsCodeIt p. s. Мой личный телеграм канал вкатывальщика в прогерство: @SefoNotasi
Dmitry Aleksandrovich 11 уровень, Санкт-Петербург
29 октября, 14:33
Что означает п.4 "Да, программа срабатывает после 2 нажатии на энтер."?
Виктор 11 уровень, Москва Expert
29 октября, 15:02
Тут не для всех очевидный момент был, что после ввода данных о коте нужно ещё один энтер дать, чтобы программа завершилась (хотя об этом в ТЗ написано ; ) .
Dmitry Aleksandrovich 11 уровень, Санкт-Петербург
29 октября, 15:15
понял, а то меня смутило, что за 2 энтера, без которых все решилось ))
Andrew Trots 15 уровень, Минск
22 сентября, 19:34
Подскажите пожалуйста это очень важно на данном этапе изучить или потом все придет ? что за @Override??
yurii 18 уровень
25 сентября, 10:09
Этот вопрос уже объяснялся в лекциях и дальше еще будет упоминаться. Мы переопределили метод toString, тоесть поменяли реализацию. Теперь вместо адреса в памяти он возвращает все данные о коте. попробуй закоментировать его и посмотришь что получится.