相关疑难解决方法(0)

List <Map <String,String >> vs List <?扩展Map <String,String >>

两者之间有什么区别吗?

List<Map<String, String>>
Run Code Online (Sandbox Code Playgroud)

List<? extends Map<String, String>>
Run Code Online (Sandbox Code Playgroud)

如果没有差异,使用的好处是? extends什么?

java generics polymorphism inheritance

126
推荐指数
3
解决办法
10万
查看次数

Dagger 2无法识别Kotlin中的provide方法。Java工作正常

Dagger无法识别Kotlin中提供的一种方法。这是模块的重要部分:

    @Provides
    @AppScope
    fun provideClient(cache: Cache, interceptors: List<Interceptor>?): OkHttpClient {

        val httpBuilder = OkHttpClient.Builder()

        interceptors?.let {
            for (interceptor in interceptors) {
                httpBuilder.addInterceptor(interceptor)
            }
        }

        return httpBuilder
                .cache(cache)
                .build()
    }

    @Provides
    @AppScope
    fun provideInterceptors(): List<Interceptor>? {
        return listOf(HttpLoggingInterceptor().setLevel(WebServiceConfig.LOGGING_LEVEL))
    }
Run Code Online (Sandbox Code Playgroud)

错误消息如下:

AppComponent.java:15: error: java.util.List<? extends okhttp3.Interceptor> cannot be provided without an @Provides-annotated method.
Run Code Online (Sandbox Code Playgroud)

如果我使用MutableList,则可以使用。因此,问题是:Dagger2 / Kotlin中的List有什么问题?

android kotlin dagger-2

3
推荐指数
1
解决办法
511
查看次数

标签 统计

android ×1

dagger-2 ×1

generics ×1

inheritance ×1

java ×1

kotlin ×1

polymorphism ×1