Android之提示Method return type must not include a type variable or wildcard:

£可爱£侵袭症+ 提交于 2020-04-15 10:32:06

【推荐阅读】微服务还能火多久?>>>

1 问题

调用retrofit的时候提示错误如下

 Method return type must not include a type variable or wildcard: io.reactivex.Observable<package.class<?>>

 

 

 

 

 

2 原因

我们知道英文单词variable是多变的,易变的意思,然后 wildcard是未知数的意思,上面的错误也就是说,这个函数返回的类型不能是易变的或者未知数,特么的,这个函数是从java代码转kotlin的

比如java代码有下面的类,我们需要返回这个类

public class Test<T> {
    public int code;
    public T data;
}


public Observable<Test>  ff() {} 

转kotlin之后,变成下面了

fun ff(): Observable<Test<*>> {

}

就是这个<*>搞出问题来的 

 

 

 

 

 

3 解决办法

 把*去掉改成Any

fun ff(): Observable<Test<Any>> {

}

 

发布了1090 篇原创文章 · 获赞 708 · 访问量 315万+
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!