顶级扩展程序

顶级扩展方法不包含在类中。

fun IntArray.addTo(dest: IntArray) {
    for (i in 0 .. size - 1) {
        dest[i] += this[i]
    }
}

上面的扩展方法是为 IntArray 类型定义的。请注意,使用关键字 this 访问定义了扩展方法的对象(称为接收方 )。

可以这样调用此扩展名:

val myArray = intArrayOf(1, 2, 3)
intArrayOf(4, 5, 6).addTo(myArray)