#java #arrays #object #printing
#java #массивы #объект #печать
Вопрос:
Я создаю массив объектов и у меня проблема с простой печатью
Dog Dogobj[]=new Dog[2]; // Dog objects within this array
Dogobj[0] = new Dog(Age, weight, name);
Dogobj[1] = new Dog(Age, weight, name);
System.out.println("Dog age?: " Dogobj[0].Dogtype etc.)
Теперь, после их создания, я не могу найти простой способ их печати, в котором не так много длинных строк. Это единственный способ, которым, как я обнаружил, я могу это сделать (выше) — для каждого объекта есть около 10 переменных, поэтому они представляют собой очень длинные строки.
Комментарии:
1. Вы добавили
toString()
метод в свойDog
класс?
Ответ №1:
Вы можете сделать что-то вроде:
for (Dog dog : Dogobj) {
System.out.println(dog); // This way every dog will be printed in a new line
}
И, конечно, реализуйте метод Dog toString .
в определении класса «Dog»:
@Overrride
public String toString() {
"Age: " age ","
"weight: " weight ","
"name: " name;
}
если вы хотите, чтобы каждый элемент dog был напечатан в новой строке, вы можете реализовать toString таким образом:
@Overrride
public String toString() {
"Age: " age ",n"
"weight: " weight ",n"
"name: " name;
}
Ответ №2:
- Внедрите
toString
метод () в свой класс DogObj. Внутри этого метода вы можете вернуть строку, которую необходимо распечатать из объекта. - Распечатайте объекты внутри цикла for.
for (int i = 0; i < Dogobj.length; i ) {
System.out.println(DogObj[i]);
}
Ответ №3:
Используйте это:
`for(String d : dog)`
- Элемент списка:
{System.out.println(d);}
- Или это:
for(int i=0 ; i<dog.length ; i ){ System.out.println(dog[i]);}