2016-05-24 3 views
-3

Я бегу код массива, как показано нижепечати ArrayList подробно

ArrayList elements= result.tools 

Когда я пытаюсь напечатать, как показано ниже

for (int i = 0; i < elements.size(); i++) { 
    String value = elements.get(i); 
    System.out.println("Element: " + value); 

Я могу только смотреть напечатанное как: Элемент: UFXB-004 элемент: UFXB-005 элемент: UFXB-006

Как я могу напечатать полную детализацию как eqpId, epqClass и так далее для каждого элемента?

enter image description here

+0

Element класс содержит eqpId, epqClass result.tools возвращает ArrayList из элемента? – Unknown

+0

строка кода «ArrayList elements» кажется неполной, вам нужно предоставить полную информацию – nullpointer

+1

переопределить и реализовать метод toString() для объекта, который у вас есть в Arraylist. – Beniton

ответ

1

Вы должны реализующий метод toString() в классе Equipment как:

@Override 
    public String toString() { 
      return this.eqpId + ", " + this.epqClass 
    } 
+0

Ах, введите код вручную, спасибо за внимание. – suwey

0

Вы можете реализовать ToString() и добавить каждое свойство в этом классе.

@Override 
public String toString() { 
     return this.eqpId + ", " + this.eqpClass + ", " + this.eqpPlatform; 
} 

Если вы хотите использовать отражение, вы можете попробовать это:

@Override 
public String toString() { 
    StringBuilder fields = new StringBuilder(); 
    for (Field field : this.getClass().getDeclaredFields()) { 
     field.setAccessible(true); 
     fields.append(field); 
     fields.append(" "); 
    } 
    return fields; 
} 
Смежные вопросы