1、泛型

泛型类

例如我们有一个类,负责统计分数,但是分数的类型不确定,可以是 String 的也可以是 Int 的,这个时候就需要使用泛型类。

fun main() {
    var s1 = Score<Int>("张三",18,100)
    var s2 = Score<String>("李四",19,"优秀")
}

class Score<T>(var name: String,var age: Int,var score: T)

泛型并不是每个类只能存在一个,我们可以一次性定义多个类型参数

class Test<K, V>(val key: K, val value: V)