English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
在本文中,您将学习如何使用扩展函数扩展具有新功能的类。
假设您需要扩展具有新功能的类。在大多数编程语言中,您要么派生一个新类,要么使用某种设计模式来执行此操作。
但是,在Kotlin中,您也可以使用扩展函数来扩展具有新功能的类。基本上,扩展函数是在类外部定义的类的成员函数。
例如,您需要在String类中使用一种方法,该方法返回删除了第一个和最后一个字符的新字符串。此方法在String类中不存在。您可以使用扩展函数来完成此任务。
fun String.removeFirstLastChar(): String = this.substring(1, this.length - 1) fun main(args: Array<String>) { val myString = "Hello Everyone" val result = myString.removeFirstLastChar() println("Résultat de la sortie: $result") }
Lors de l'exécution du programme, la sortie est :
Le résultat de la sortie est: ello Everyon
Dans ce cas, la fonction d'extension removeFirstLastChar () est ajoutée à la classe String.
Le nom de la classe est le type de récepteur (dans notre exemple, la classe String). Le mot-clé this dans la fonction d'extension fait référence à l'objet récepteur.
Si vous souhaitez intégrer Kotlin à un projet Java, vous n'avez pas besoin de modifier tout le code en Kotlin. Il suffit d'utiliser les fonctions d'extension pour ajouter des fonctionnalités.