我想用 OO 实现 2 个报告。报告都像(但有不同的列和数据):
name age gender phone_number
A 10 male 1234
B 20 female 5678
C 30 n/a 9012
如您所见,在报告中,每一列都有自己的标题和解析器(用于解析数据)。我设计了一个对象列:
class Column<T extends Object>
{
private String header;
private ColumnParser parser;
public Column(String header)
{
this.header = header;
this.parser = new ColumnParser<T>()
{
public String parse(T t)
{
return t.toString();
}
}
}
public Column(String header, ColumnParser parser)
{
this.header = header;
this.parser = parser;
}
public interface ColumnParser<T>
{
public String parse(T t);
}
}
这样每一列都有自己的解析器来解析该列中的数据。但是在这之后,我不知道如何存储数据,以便它们可以映射到每一列并可以被解析。
请指教。