我使用的库中有重载的方法:
put(String key, Integer value)
put(String key, Long value)
put(String key, Double value)
put(String key, Float value)
我试图把String
与Int
价值存在,但我得到以下错误:
Error:(41) ambiguous reference to overloaded definition,
both method put in class ContentValues of type (x$1: String, x$2: Double)Unit
and method put in class ContentValues of type (x$1: String, x$2: Float)Unit
match argument types (String,Long)
在这种情况下我该怎么办?
您正在尝试放置一个Int
,但是没有重载方法可以使用它,因此编译器尝试使用隐式转换。我的猜测是,您可以将其隐式转换为aDouble
或a Float
,但不知道要使用哪个。因此,让我们帮忙:
val myJavaInteger: java.lang.Integer = myScalaInt
现在使用myJavaInterger调用put,不会造成混乱,因为有一个重载的put方法accepts java.lang.Integer
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句