不兼容的类型: AsyncTask<Void,Void,List<User>>无法转换为List<User>
时间: 2023-12-10 12:05:27 浏览: 69
这个错误提示表明你尝试将一个 AsyncTask 对象转换为 List<User> 类型,但是这两者是不兼容的类型。
AsyncTask 是 Android 中的一个类,用于在后台线程中执行异步任务,并在执行完成后返回结果给主线程。而 List<User> 是一个泛型类型,表示包含多个 User 对象的列表。
如果你想要获取 AsyncTask 的执行结果,可以在 AsyncTask 中重写 onPostExecute() 方法,并在该方法中返回 List<User> 类型的结果。例如:
```
class MyAsyncTask extends AsyncTask<Void, Void, List<User>> {
@Override
protected List<User> doInBackground(Void... voids) {
// 执行后台任务,并返回 List<User> 类型的结果
List<User> userList = new ArrayList<>();
// ...
return userList;
}
@Override
protected void onPostExecute(List<User> userList) {
// 在主线程中处理执行结果
// ...
}
}
```
然后,在主线程中创建 MyAsyncTask 对象,并调用 execute() 方法来执行异步任务:
```
MyAsyncTask myAsyncTask = new MyAsyncTask();
myAsyncTask.execute();
```
在 onPostExecute() 方法中,你可以将 List<User> 类型的结果保存到成员变量中,或者直接使用它来更新 UI 界面等操作。
阅读全文