Kotlin:null和“超载分辨率不明确”

时间:2018-08-07 08:58:03

标签: kotlin null overloading

我想从Kotlin调用重载的Java函数。我想使用null作为对重载分辨率有效的参数。

如何为IntArray的值指定null类型?

我不喜欢带有普通类型附加变量的解决方案。

enter image description here

1 个答案:

答案 0 :(得分:7)

不是将变量强制转换为变量,即MenuActivity,例如:

null as IntArray?

请注意,这与Java中的行为相同,在Java中,您还需要强制转换origImg.data.getSamples(0, 0, origImg.width, origImg.height, 0, null as IntArray?) ,例如null,以调用适当的重载方法。

您可以构建一个函数,为您提供类型化的〜(int[]) null类型(如果尚不存在)

null

并通过以下方式调用它:

inline fun <reified T>typedNull(): T? = null

但是话又说回来,typedNull<IntArray>() 很清楚,我已经知道,人们已经知道了。