我有一段代码,它将从给定的数组列表中获取值,而不管数据类型如何。它工作正常。
public static <E> void getAll(List<E> elements)
{
for (E el : elements)
{
System.out.println(el.toString());
}
System.out.println();
}
public static void main(String args[]) throws Exception
{
List<Integer> listInt = new ArrayList<Integer>();
listInt.add(3);
listInt.add(4);
listInt.add(5);
listInt.add(6);
List<String> listStr = new ArrayList<String>();
listStr.add("Animal");
listStr.add("Ball");
listStr.add("cat");
listStr.add("dog");
getAll(listInt);
getAll(listStr);
}
输出:
3
4
5
6
Animal
Ball
cat
dog
但是我尝试了相同的概念来从POJO对象获取数据,但是它失败并且只返回对象而不是像上面那样的Field。
以下代码是我的样本POJO:
public class Test1
{
private String car;
private int price;
public String getCar()
{
return car;
}
public void setCar(String car)
{
this.car = car;
}
public int getPrice()
{
return price;
}
public void setPrice(int price)
{
this.price = price;
}
public String toString()
{
return String.format(car);
}
}
以下代码添加到main()方法中:
Test1 t1 = new Test1();
t1.setCar("volvo");
t1.setPrice(400000);
Test1 t2 = new Test1();
t2.setCar("datsun");
t2.setPrice(500000);
List<Test1> t1Array = new ArrayList<Test1>();
t1Array.add(t1);
t1Array.add(t2);
getAll(t1Array);
以下是代码的输出:
输出:
Volvo
Datsun
是否有其他方法可以获取该字段的值(整数),这将适用于任何类型的POJO类。
任何线索?
答案 0 :(得分:0)
覆盖POJO类中的toString方法:
public class Test1
{
public String toString(){
return this.car;
}
}