package com.javarush.task.task06.task0614;
import java.util.ArrayList;
/*
Статические коты
*/
public class Cat {
public static ArrayList<Cat> cats = new ArrayList<>();
public String name;
public Cat(String name) {
this.name = name;
}
public static void main(String[] args) {
for (int i = 0; i < 10; i++)
{
String name = Integer.toString(i);
Cat.cats.add(new Cat(name));
}
printCats();
}
public static void printCats() {
for (int i = 0; i < 10; i++)
{
System.out.println(cats.get(i).toString());
}
}
}
Для доп. тренировки расширил задачу, добавляя имя для каждого создаваемого объекта - Имя = номер шага цикла. Бьюсь уже час - всеравно выводится hash. Куда копать, подскажите плзdenis_rudie
22 уровень
Выводится hash каждого объекта вместо нормального описания
Решен
Комментарии (4)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Ksenia VolkovaJava Developer в DXCMaster
15 февраля 2020, 16:46решение
Копай в сторону переопределения метода toString()
+2
denis_rudie
15 февраля 2020, 17:10
Спасибо, получилось!
Но почему toString без переопределения не отрабатывает вовсе?
Что с ним, что без него, результат вывода был одинаковый
0
Ksenia VolkovaJava Developer в DXCMaster
15 февраля 2020, 17:13
Почему же не отрабатывает? Когда выводится hash - это как раз toString его выводит. Тот, который по умолчанию наследуется всеми классами от Object.
+1
denis_rudie
15 февраля 2020, 17:16
Разобрался спасибо
0