java - Observable<List<Object>> 无法转换为 Observable<List<Anime>>

标签 java android android-studio

我收到错误“不兼容的类型:Observable<List<Object>> 无法转换为 Observable<List<Anime>>

public Observable<List<Anime>> getOnlyAnimeObservable() {
    List onlyAnimeList = getOnlyAnimeList();
    if (onlyAnimeList == null) {
        return Observable.just(Collections.emptyList());  //Required <List<Class>> But Found <List<Object>>
    }
    return Observable.just(onlyAnimeList); //Required <List<Class>> But Found <List>
}

如果我改变public Observable<List<List<Anime>> getOnlyAnimeObservable()

public Observable<List<Object>> getOnlyAnimeObservable() 

return Observable.just(Collections.emptyList()); error solved but return Observable.just(onlyAnimeList); still shows error

同时如果我改public Observable<List<List<Anime>> getOnlyAnimeObservable()public Observable<List> getOnlyAnimeObservable()

return Observable.just(onlyAnimeList); error solved but return Observable.just(Collections.emptyList()); shows error.

最佳答案

这是因为Collections.emptyList()返回List<Object> 。试试这个代码:

List<Anime> list = Collections.emptyList();
return Observable.just(list);

getOnlyAnimeList方法还应该返回 List<Anime>类型。所以完整的代码应该是:

 public Observable<List<Anime>> getOnlyAnimeObservable() {
    List<Anime> onlyAnimeList = getOnlyAnimeList();
    if (onlyAnimeList == null) {
        List<Anime> list = Collections.emptyList();
        return Observable.just(list);
    }
    return Observable.just(onlyAnimeList);
 }

我们可以简化一切:

public Observable<List<Anime>> getOnlyAnimeObservable() {
    List<Anime> list = getOnlyAnimeList();
    if (list == null) {
        list = Collections.emptyList();
    }
    return Observable.just(list);
}

关于java - Observable<List<Object>> 无法转换为 Observable<List<Anime>>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53518272/

相关文章:

android - ARCore 如何发布通过 acquireCameraImage 获取的图像

android - 如何使用 putExtra 将 List<Map<String,String>> 传递给另一个 Intent

android - 单击按钮时显示随机图像

android - 异常 : This is not supported, 使用 MenuItemCompat.getActionProvider()

Android Studio 原生代码编译速度慢

java - AWS Api Gateway - Java SDK 生成 "Internal error occurred while generating SDK"

java - 从 Google Play 商店安装应用程序会出现 Firebase 身份验证错误,但从我的计算机安装相同的 APK 可以完美运行

java - 如何修复netbeans中的java语言级别错误

java - 未生成 R.java 文件。如何解决?

java - Samsung Galaxy Tab S 无法从 "Download"目录获取 listFiles