2016-09-09 3 views
-3

общественного недействительным addAnimalsToZoo() {Dashcode ошибка с Java массивом [email protected], [email protected], [email protected]

Animal[] zoo = new Animal[animals.length + 5]; 
    System.arraycopy(animals, 0, zoo, 0, animals.length); 

    for (count = 0; count < zoo.length; count++) 
     System.out.println("new animals with new array" + "\t" + zoo[count]); 

} 
+1

Что вы собственно вопрос? –

+0

когда я распечатываю массив, я получаю hashcode, как я могу получить строку – JOJO

+0

@JOJO прочитал ответ. он говорит вам, что делать, и это объясняет, почему вы теперь получаете такие результаты. – Stultuske

ответ

0

Вы не переопределяете toString метод в вашем классе животных.

System.out.println("new animals with new array" + "\t" + zoo[count]); 

напечатает конкатенацию «новых животных с новым массивом», «\ т» и результат toString призвал зоопарка [число].

Если вы не отменяют toString, один по умолчанию (из класса Object) будет использоваться, в результате чего отпечатки, как: [email protected]

+0

Вы имели в виду как System.out.println («новые животные с новым массивом» + «\ t» + toString (zoo [count])); – JOJO

+0

вам необходимо переопределить toString() в вашем классе животных – Stultuske

+0

no. Я имею в виду что-то вроде: public String toString() {return "result"; } – Stultuske