2013-08-12 4 views
0

Я знаю о работе списка. когда я делаю следующий код своей работой отлично, но я не могу получить доступ к его значениям, и я знаю, какие значения в нем, но после вывода показывает, что это неправильно.Как работает net.java.dev.jaxb.array.StringArray?

List<StringArray> searchresponse = searchContent(data, pasta, chan, Type, arrS, arrk); 
System.out.print(searchresponse); 

этот выход =
[[email protected]] не правильно. Как показать элементы, которые поступают в ответ на вызванную функцию?

ответ

0

System.out.print(/*Object*/ o) эквивалентно System.out.print(/*Object*/ o.toString())

В вашем случае o является searchresponse

[[email protected]]

Это по умолчанию toString().

public String More ...toString() { 
    return getClass().getName() + "@" + Integer.toHexString(hashCode()); 
} 

Чтобы проверить, попробуйте следующее:

String s = searchresponse.toString(); 
System.out.println(s);// prints [email protected] 
+0

Я попытался это, но [[email protected]] это неправильный выход. точный вывод - это некоторые элементы, которые должны быть показаны – user2674221

0

Всякий раз, когда мы пытаемся печатать объекты, компилятор найдет ToString() метод в классе Object и произвести строковое представление objects.You будет переопределить метод для получения фактических значений переменных экземпляра.

class A 
    { 
    String name; 
    int id; 
    A(String name, int id) 
     { 
      this.name=name; 
      this.id=id; 
     } 
    public String toString() 
     { 
     return (name+" "+id); 
     } 
    public static void main (String ...a) 

    { 
     List<A> list = new ArrayList<A>(); 
     A o = new A("a",1); 
     A o1= new A ("b",2); 
     list.add(o); 
     list.add(o1); 
     System.out.println(list); 

    } 

} 

Выход

[a 1, b 2] 
+0

Без изменения класса, как я могу получить доступ к элементам, которые помещены в него? – user2674221