kotlin 函数引用

引言

先确认一下,什么叫做引用

java 复制代码
Object obj = new Object()	//这里的obj就是一个强引用

再确认一个结论: lambda 属于函数类型对象 。

Kotlin 复制代码
    fun methodResponseResult(msg: String , respo:(Int, String)->Unit){


    }


    fun  methodRespoResunt(type: Int ,msg: String){

    }

    fun main(){

        //函数引用
        // lambda 属于函数类型对象,需要把methodRespoResunt 普通函数变成 函数类型的对象(函数引用)
        methodResponseResult( "DDD" , :: methodRespoResunt)

    }

上面代码解释:

lambda 属于函数类型对象,需要把methodRespoResunt 普通函数变成 函数类型的对象。

概念

‌**Kotlin中的函数引用**‌

是指使用双冒号**::操作符来获取函数的引用。这种引用方式可以将函数作为参数**传递给其他函数,或者作为返回值类型。函数引用在Kotlin中非常有用,特别是在使用高阶函数时,因为它允许将函数作为数据传递和处理。

:: 使用

::是一个操作符,它可以用来引用函数、属性或构造函数。

引用函数:可以使用::操作符来引用一个函数。

引用属性:可以使用::操作符来引用一个属性。

引用构造函数:可以使用::操作符来引用一个构造函数。

引用成员函数或成员属性:可以使用::操作符来引用一个类的成员函数或成员属性。例如,myClass::myFunction可以用来引用一个名为myFunction的类成员函数。

要注意的是,::操作符只能用于引用已存在的函数、属性或构造函数,不能用于创建新的函数或属性。

相关推荐
阿巴斯甜15 小时前
Android 报错:Zip file '/Users/lyy/develop/repoAndroidLapp/l-app-android-ble/app/bu
android
Kapaseker15 小时前
实战 Compose 中的 IntrinsicSize
android·kotlin
xq952716 小时前
Andorid Google 登录接入文档
android
黄林晴17 小时前
告别 Modifier 地狱,Compose 样式系统要变天了
android·android jetpack
冬奇Lab1 天前
Android触摸事件分发、手势识别与输入优化实战
android·源码阅读
城东米粉儿1 天前
Android MediaPlayer 笔记
android
Jony_1 天前
Android 启动优化方案
android
阿巴斯甜1 天前
Android studio 报错:Cause: error=86, Bad CPU type in executable
android
张小潇1 天前
AOSP15 Input专题InputReader源码分析
android
_小马快跑_2 天前
Kotlin | 协程调度器选择:何时用CoroutineScope配置,何时用launch指定?
android