我是Kotlin的初学者,以下代码来自网页,val box3是正确的.
我被告知val box1和val box2都是正确的.为什么?
class Box<T>(val value: T)
val box1: Box<Int> = Box<Int>(1)
val box2: Box<Int> = Box(1)
val box3 = Box(1)
Run Code Online (Sandbox Code Playgroud)
所有这三行都是"正确的",并以完全相同的方式创建完全相同的实例.他们只是使用Kotlin提供的各种级别的类型推断(即它可以从上下文中自己找出类型和类型参数),从最详细的第一个到最简洁的最后一个.
由于这些线条的作用完全没有区别,因此您可以根据自己的喜好使用最易读的线条.