public void listAllPatient()
{
ArrayList<Patient> listPatient=curClinic.getAllPatient();
System.out.println("Medicare Number" + "Name" + "Year Of Birth" + "Number of Visits");
for(Patient p : listPatient)
{
System.out.println(p);
}
}
public String toString()//code from patient class
{
return medicareNumber + " " + pName + " " + brithDate + " " + getNumberOfVisit();
}
我想要展示这样的东西
Medicare Number Name Year Of Birth Number of Visits
3012 81822 8 Fred Smith 1957 13
2249 14567 9 John Adams 1928 2
答案 0 :(得分:1)
首先看看String.format
,Formatter
和this for some examples
首先定义标题和数据格式......
public static final String HEADER_FORMAT = "%-20s %-20s %-20s %-20s";
public static final String DATA_FORMAT = "%-20s %-20s %-20d %-20d";
打印标题...
System.out.println(String.format(HEADER_FORMAT, "Medicare Number", "Name", "Year Of Birth", "Number of Visits"));
然后为每个Patient
格式化它的属性
for (Patient p : patients) {
System.out.println(String.format(DATA_FORMAT, p.getMediacareNumber(), p.getName(), p.getDob(), p.getVisits()));
}
我选择不使用toString
方法,因为这可能会用于其他事情,如果没有标题,它就会变得毫无用处。
这可以产生类似......
的东西Medicare Number Name Year Of Birth Number of Visits
3012 81822 8 Fred Smith 1957 13
2249 14567 9 John Adams 1928 2
答案 1 :(得分:0)
您可以使用类似OpenCSV(使用制表符分隔符)的内容来创建适当的格式化数据集,其优点是您还可以将其保存并在外部软件中使用它。