Jibing m = (Jibing)list.get(i);這句前面的強轉是多餘的,list本身存的就是Jibing。報錯應該就是ClassCastException,那麼問題就是出在了ArrayList list =(ArrayList)date;這句,說明date是一個集合,但是集合裡面不是Jibing,所以你可以強轉成ArrayList,但是當你取得裡面的元素時就不能強轉成Jibing了。
public class ServiceResult<T>{
private String resultMsg="";
private int resultCode="";
private T result;
public T getResult(){
return result;
}
public void setResult(T returnObj){
this.result=returnObj;
}
}
...
ServiceResult<ArrayList<Jibing>> date=pagelist.getResult();
ArrayList<Jibing> list = date.getResult();
if (list != null && list.size() > 0)
{
for (int i = 0; i < list.size(); i++)
{
Jibing m = (Jibing)list.get(i);//报错
}
}
強轉容易報錯,要確定 data 適合強轉
具體要實現什麼功能?
list.get()打上括號啊,執行順序明顯不對。
Jibing m = (Jibing)list.get(i);這句前面的強轉是多餘的,list本身存的就是Jibing。報錯應該就是ClassCastException,那麼問題就是出在了ArrayList list =(ArrayList)date;這句,說明date是一個集合,但是集合裡面不是Jibing,所以你可以強轉成ArrayList,但是當你取得裡面的元素時就不能強轉成Jibing了。
Object date=pagelist.getResult();
返回類型要明確,不要強轉,鬼知道返回的類型是什麼
使用泛型吧
看你date最後回來的是什麼類型,根據類型去轉換。