我想管理java中的格式

时间:2015-09-17 08:05:23

标签: java

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

2 个答案:

答案 0 :(得分:1)

首先看看String.formatFormatterthis 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(使用制表符分隔符)的内容来创建适当的格式化数据集,其优点是您还可以将其保存并在外部软件中使用它。