Сначала использовал ArrayList в HashMap, потому что не мог создать HashMap с обычным Array. В итоге из-за того, что там создавались дополнительные код не проходил валидацию, потому что было более одно List. Позже всё таки сделал, используя старый алгоритм и HashMap с обычным Array. При выводе HashMap выходило следующее: [Ljava.lang.Integer;@7a30d1e6 , что-то не хотел записывать значения, но в итоге всё нормально посчитало.
Вопрос такой: [Ljava.lang.Integer;@7a30d1e6 - что это такое.
P.S. Я пишу код с браузера, потому что у меня комп тупит и медленно отлаживает программу.
Руслан
31 уровень
35 попыток, но дело сделано! ! !
Обсуждается
Комментарии (3)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Ksenia VolkovaJava Developer в DXCMaster
27 февраля 2020, 18:54
[Ljava.lang.Integer;@7a30d1e6 - так выглядит массив Integer при выводе в консоль (у массивов нет переопределенного метода toString)
0
Руслан
1 марта 2020, 03:11
то есть все типы данных при выводе на консоль преобразуются в тип String?
0
Ksenia VolkovaJava Developer в DXCMaster
1 марта 2020, 09:01
Ну в консоль же именно текст выводится, последовательность символов... как иначе?
Поэтому для того, чтобы вывести какой-то объект в консоль, нужно каким-то образом получить его текстовое представление. За это отвечает метод toString(), он есть у всех объектов (потому что наследуется от Object). Но по умолчанию он возвращает строку вида ИмяКласса@хэш. Если ты хочешь, чтобы твой класс в виде сроки выглядел как-то иначе, надо метод toString переопределить.
0