问题描述
我有一个服务调用,它返回一个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>()