Java:不兼容的类型错误

时间:2013-11-19 11:42:17

标签: java arraylist casting

我有以下代码;

for(Object[] myObj : queryResponse.getRecords()) {

}

getRecords()的签名是List<T> getRecords()

现在queryResponse是自定义类型的QueryResponse类,有2个成员;

private Long totalRecords;
    private List<T> records;

现在在运行时(在调试期间),我将“记录”作为Vector获取,成员为

[0] = Object[]
[1] = Object[]

但是我不确定为什么我得到以下行的不兼容类型编译错误

for(Object[] myObj : queryResponse.getRecords()) {

1 个答案:

答案 0 :(得分:-1)

您可能需要将方法声明从List<T> getRecords()更改为List<T[]> getRecords()

我通常在Dao层中这样做:

List<Object[]> list = query.list(); // Use vector in your case, I get List<Object[]>
for (Object[] obj : list) {
   //....
}