当前位置: 首页 > news >正文

Kotlin中回调函数的使用示例

1.定义一个带有回调函数的测试类

class DataTest(var c: Int, var d: Int, ){var a = cvar b = dvar f1:((Int)-> Unit)?=nullfun printSelf(){println("a=$a,b=$b")println("c=$c,d=$d")f1?.invoke(c)}
}

其中的f1即为一个回调函数,可以由外部调用者去实现。

var f1:((Int)->Unit))?=null

函数的类型需要使用括号将其包裹。

 f1?.invoke(c)

这句代码为类的内部调用。

2.外部实现回调函数

fun main(){var m = DataTest(c = 10, d = 11)m.f1 = {println("callback:${it}")}m.printSelf()
}

下面这句话为回调函数的外部定义。

m.f1 = {println("callback:${it}")}

3.显示结果

a=10,b=11
c=10,d=11
callback:10

http://www.dtcms.com/a/357103.html

相关文章:

  • Git-Git和TortoiseGit的安装以及使用
  • 云渲染云推流助力WebGL应用网页端无负担推流,摆脱终端加载缓慢问题
  • 无恶意软件勒索:Storm-0501如何转向云原生攻击
  • Linux829 shell:expect interact “ “ set
  • 知识卡片html5动态网页源码
  • CRYPT32!CryptMsgUpdate函数分析之CRYPT32!PkiAsn1Decode函数的作用是得到pci
  • ros2--topic/话题--接口
  • tauri打包失败
  • 太阳光模拟器在卫星研发与测试中的应用
  • wav音频转C语言样点数组
  • 嵌入式Linux设备树驱动开发 - dtsof驱动
  • shell学习(二)
  • Sharding-JDBC 使用方法
  • 为什么不能创建泛型数组?
  • C++并发编程-17. 线程安全的链表
  • Unity EventTrigger 动态添加事件
  • flume事务机制详解:保障数据可靠性的核心逻辑
  • 项目中为什么使用SpringBoot?
  • 晨控CK-FR102ANS与欧姆龙NX系列PLC配置EtherNet/IP通讯连接手册
  • 如何规划一年、三年、五年的IP发展路线图?
  • Android 端 QGroundControl 控制 PC 端Gazebo Sim 仿真无人机
  • 龙迅#LT7642GX适用于4路HDMI2.1/DP/TPYE-C转HDMI+LVDS/MIPI混合开关应用,分辨率高达8K30HZ !
  • ADFS 和 OAuth 的区别
  • 第三届机械工程与先进制造智能化技术研讨会(MEAMIT2025)
  • 打造企业内部的“技术桥梁”:超级用户机制如何助力制造企业高效运维
  • “聚势同行・创赢未来”淮南高新区科技型企业沙龙——2025大数据企业专场成功举办
  • 解决RTX3070魔改16G在UBUNTU中黑屏问题
  • AI模型库哪个好?2025年主流AI模型选型指南与API成本对比推荐
  • 在现场把“数据”变成可用的力量 —— 谈EG8200Lite的实战价值
  • 七牛云灵矽AI实践:构建可扩展智能体的开放协议与架构