问题描述
我有一个服务调用,它返回一个JSON响应,然后通过数据管理器传递,如果服务成功则转换数据,或者如果调用失败则创建错误体。
数据管理器是用kotlin编写的,我感兴趣的特定代码行就是这个
val mutableList = mutableListOf<Address>()
return Result.error(errorTransformation(serviceErrors, mutableList))
 
  我的errorTransformation类基本上是一个异常调用,这是java编写的。 异常类的构造函数是
ExceptionClass(ServiceErrors serviceError ,List<Address> address){
    // initiialize fields here
}
 
  现在,当我尝试初始化我的异常类时,它表示找到了相应的构造函数,并且它向我展示了一个生成一个语法的建议
ExceptionClass(ServiceErrors serviceError ,List<? extends Address> address){
    // initiialize fields here
}
 
   
     为什么会这样? 
     我只想要List<Address> ,而不是List<? extends Address> 
     List<? extends Address> 。 
1楼
 
     隐含使用List<? extends Address>的kotlin特定行为List<? extends Address> 
     List<? extends Address>而不是List<Address> 。 
     您可以使用注释强制kotlin生成您需要的 
val mutableList = mutableListOf<@JvmSuppressWildcards Address>()