Как использовать ToStringBuilder.reflectionToString для получения содержимого arrayList

Я хочу получить содержимое arrayList с помощью отражения, но я получаю только объект arrayList вместо значений arrayList с ReflectionToString. Ниже приведен пример кода и вывод:

   ArrayList<String> nodeList = new ArrayList<String>();
   nodeList.add("Inpt1");
   nodeList.add("Inpt2");
   System.out.println(ToStringBuilder.reflectionToString(nodeList,  ToStringStyle.MULTI_LINE_STYLE));

   Output:
   java.util.ArrayList@5ca881b5[
   size=2
   ]

Не могли бы вы рассказать мне, как получить содержимое ArrayList с помощью ReflectionToString?

Зачем ты это делаешь? У вас есть ArrayList<String>, что не так с nodeList.toString()?

Elliott Frisch 16.03.2018 10:47

У меня была работа, как показано ниже, но мне не понравилась моя работа, я ищу простое решение. if (o instanceof ArrayList) {для (int i = 0; i <((ArrayList) o) .size (); i ++) {Object game = ((ArrayList) o) .get (i); System.out.println (ToStringBuilder.reflectionToString (игра, ToStringStyle.MULTI_LINE_STYLE)); }}

ravi k 16.03.2018 11:05

@Elliott, это только тестовый код, мой вариант использования требует перехвата методов с использованием инструментария байтового кода и получения значений объекта, поэтому я должен использовать отражение.

ravi k 16.03.2018 11:07
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
3
1 584
1

Ответы 1

Это может быть одно из решений. Я сделал это с целью отладки кода для временного использования.

ArrayList<String> nodeList = new ArrayList<String>();
   nodeList.add("Inpt1");
   nodeList.add("Inpt2");
StringBuilder builder = new StringBuilder();
nodeList.forEach(p -> builder.append(ToStringBuilder.reflectionToString(p,  ToStringStyle.MULTI_LINE_STYLE)))
   System.out.println(builder.toString());

Другие вопросы по теме