我想在“ for语句”中打印出数组的值,但是,它正在打印对象地址。
Person student = new Person();
Person [] students = new Person[10];
students[0] = student;
students[1] = student;
students[2] = student;
students[0].studentDetails("Abel Morris Ben", "Java Programming", 99);
students[1].studentDetails("Jane Doe", "Web Development", 85);
students[2].studentDetails("John Doe", "Ethical Hacking", 80);
for( int i=0; i <= 2; i++) {
System.out.println(students[i]);
}
它正在打印对象位置:
Person@2a139a55
Person@2a139a55
Person@2a139a55
答案 0 :(得分:0)
请尝试下面给出的代码。
public class Person {
private String name;
private String designation;
private int salary;
public void studentDetails(String name, String designation, int salary) {
this.name = name;
this.designation = designation;
this.salary = salary;
}
public String getName() {
return name;
}
public String getDesignation() {
return designation;
}
public int getSalary() {
return salary;
}
@Override
public String toString() {
return "Person [name=" + name + ", designation=" + designation + ", salary=" + salary + "]";
}
public static void main(String[] args) {
Person student = new Person();
Person[] students = new Person[10];
students[0] = student;
students[1] = student;
students[2] = student;
students[0].studentDetails("Abel Morris Ben", "Java Programming", 99);
students[1].studentDetails("Jane Doe", "Web Development", 85);
students[2].studentDetails("John Doe", "Ethical Hacking", 80);
for (int i = 0; i <= 2; i++) {
System.out.println(students[i]);
}
}
}