Kotlin学习(五):Extension Functions

拓展函数

何为拓展函数?

正如其名称,拓展函数是这样一种函数:它可以帮助你在不触及类代码的情况下,拓展类中函数的功能。这样可以减少不必要的外部代码污染。

换句话说,在kotlin中,拓展函数允许我们通过添加新函数的方式拓展类的函数种类。被拓展的类不必属于我们(它可以是第三方库中的类)并且也不需要我们写类去集成被拓展的类。

真的?不需要使用继承!

是的,这在kotlin中是可以的。

让我们停止白话,展示一下拓展函数如何使用。


举一个非常简单的例子来帮助理解:

1
2
3
4
5
6
7
fun Int.triple(): Int {
return this * 3
}


// now we can use like this
var result = 3.triple()

另一个例子,让我们看看拓展函数如何应用在Android的View中。

1
2
3
4
5
6
7
fun ImageView.loadImage(url: String) {
Glide.with(context).load(url).into(this)
}


// now we can use like this
imageView.loadImage(url)

这看起来棒极了!

在Android开发中,有很多地方我们都可以使用kotlin的这个很酷的特性。让我合理使用它吧!

龙颜大悦,朕要赏赐!