Es decir puedo tomar una lista o un String o un Entero o la clase que sea y agregarle un método, veamos un ejemplo con String :
fun String.removeFirstLastChar(): String = this.substring(1, this.length - 1)
Entonces ahora String tendrá un nuevo método, y lo llamamos de esta manera:
fun main(args: Array<String>) {
val myString= "Hello Everyone"
val result = myString.removeFirstLastChar()
println("First character is: $result")
}
Si queremos aprovechar estas extensiones solo tenemos que importar el .java donde se programaron las extensiones. Y de esta manera nos ahorramos de tener clases Utils que agregan funcionalidad a clases del sdk.