我有几个 pojo,它们的实例变量需要转换为对象数组。我试图找到一种可以动态处理的方法,而不是在每个 pojo 中添加一个 toObjectArray() 方法。
这是一个带有 toObjectArray() 方法的示例类,我想摆脱它:
public class Contact {
private String lastName;
private String firstName;
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public Object[] toObjectArray() {
return new Object[] {
this.getLastName(),
this.getFirstName(),
};
}
}
实例变量不必按顺序返回。我有一个自定义注释,它允许我反映对象数组的正确顺序。我只是想知道是否可以动态迭代对象的实例变量和值以创建对象数组。
像这样的东西...
public static Object[] toObjectArray(Object obj) {
/// cast Object to ?
/// iterate instance variables of Contact
/// create and return Object[]
}
public static void main(String[] args) {
Contact contact = new Contact();
contact.setLastName("Garcia");
contact.setFirstName("Jerry");
Object[] obj = toObjectArray(contact);
}
任何帮助将不胜感激。如果我需要更清楚,请告诉我。
谢谢!