使用lateinit原语包装器

时间:2018-02-15 16:02:55

标签: kotlin

我有类似的东西:

@LocalServerPort
private lateinit var serverPort: Integer

IDEA警告不应使用java.lang.Integer,而是使用kotlin.Int。但kotlin.Int不能与lateinit属性一起使用。有没有办法满足这两个限制?

更新:我正在使用-Werror进行编译,因为我认为每个项目都应该。因此,代码会被@Suppress("PLATFORM_CLASS_MAPPED_TO_KOTLIN")添加不必要的垃圾。

1 个答案:

答案 0 :(得分:0)

是的,代表们。

@LocalServerPort
private var serverPort by Delegates.notNull<Int>()

代表的计算成本略高于lateinit。我尽可能使用lateinit,否则我会使用上面的方法。上面的代码与lateinit完全相同,即。不需要空检查。