所以,我在Hospital类中有一个名为Hospital的类和一个名为InsertFolders的方法。 在方法内部,用户必须填写一个数组(最多5个)的考试(我创建了一个名为Folders的类,其中我有set和get方法)。 现在我创建了另一个名为print的方法,我想打印这个数组。 请注意,有一个包含文件夹的对象数组。 ListOfFolders [i] .getNameOfFolder(例如,这是文件夹名称的字段)。 有没有办法可以打印阵列? 例如,当我尝试ListOfFolders [i] .getArrayOfExaminations()时,它不会打印预期的考试。
答案 0 :(得分:4)
只需覆盖toString
功能,如:
public class Person{
private int id;
private String firstName;
private String lasrName;
.
.
public Person(){
this.id = 1;
this.firstName = "First Name";
this.lastName = "Last Name";
}
public String toString(){
String str = "";
str += "Person Info: \n";
str += "Id : " + id + "\n";
str += "First Name : " + firstName + "\n";
str += "Last Name : " + lastName + "\n";
....
return str;
}
}
如果您愿意与我们分享您的代码,我会更好地实现它,但这是个主意。
<强>用法:强>
List<YourClass> list = new ArrayList<YourClass>();
list.add(new Person());
for (YourClass item : list){
System.out.println(item); //here it will automaticly use the overridden toString in your class
}
<强>输出:强>
Person Info:
Id: 1
First Name
Last Name
答案 1 :(得分:0)
默认情况下,打印对象会将参考(〜地址)打印到它。您需要覆盖对象的toString()方法,以使其打印正确的值。
如果这是Java中的默认数组,则可以使用for(item:array)语法循环遍历数组中的对象。