在 Kotlin 中,泛型默认值的概念与 Java 不同
然而,您可以为 Kotlin 泛型参数提供默认类型。要为泛型参数提供默认类型,请在定义泛型类或函数时,使用 T : Type
语法为泛型参数指定下界,并在调用泛型类或函数时省略该参数。
以下是一个示例,演示如何为 Kotlin 泛型设置默认类型:
// 定义一个泛型类,其中 T 的默认类型为 String
class MyClass<T : Any> {
var value: T? = null
fun printValue() {
println(value)
}
}
fun main() {
// 创建一个 MyClass 实例,使用默认类型 String
val myClass1 = MyClass<String>()
myClass1.value = "Hello, World!"
myClass1.printValue()
// 创建一个 MyClass 实例,指定泛型参数类型为 Int
val myClass2 = MyClass<Int>()
myClass2.value = 42
myClass2.printValue()
}
在这个例子中,我们定义了一个泛型类 MyClass
,其中泛型参数 T
的下界为 Any
。这意味着 T
可以是任何非空类型。当我们创建 MyClass
的实例时,可以选择使用默认类型 String
,也可以指定其他类型,如 Int
。
领取专属 10元无门槛券
手把手带您无忧上云