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>> {

}