Kotlin全局函数的引入和范围
来源:互联网 发布:知乎有mac版吗 编辑:程序博客网 时间:2024/06/07 22:27
(1)在Dog.kt文件中定义了函数ifNotNull,函数位于com.robot.kotlin.animal包下:
package com.robot.kotlin.animalfun <T1, T2> ifNotNull(value1: T1?, value2: T2?, bothNotNull: (T1, T2) -> (Unit)) { if (value1 != null && value2 != null) { bothNotNull(value1, value2) }}
(2)在Cat.kt文件中也定义了函数ifNotNull,参数和Dog.kt里面定义的完全相同,函数位于com.robot.kotlin包下:
package com.robot.kotlin.animalfun <T1, T2> ifNotNull(value1: T1?, value2: T2?, bothNotNull: (T1, T2) -> (Unit)) { if (value1 != null && value2 != null) { bothNotNull(value1, value2) }}
(3)在Test.kt里面调用ifNotNull函数:
package com.testimport com.robot.kotlin.ifNotNullfun main(args: Array<String>) { var age = 10 var name = "jack" ifNotNull(age, name, { age, name -> }) // 区别与在另一个ifNotNull全局函数 com.robot.kotlin.animal.ifNotNull(age, name, { age, name -> })}
(1)可以看到全局函数的作用域是以包为作用域的;
(2)引入的时候可以直接使用import xxx.全局函数,这个跟java的不同;
(3)也就是同一个包作用域下,不可以有“同名”的全局函数;比如都在com.robot.test包下,有两个kt文件,在这两个kt文件中,都有同样的函数,会产生冲突的;
(4)如果不同的包作用域下,有“同名”的全局函数,则需要引入全局函数的全局路径即可;
阅读全文
0 0
- Kotlin全局函数的引入和范围
- kotlin的变量和函数
- Kotlin 范围
- Kotlin-范围
- kotlin的扩展函数和扩展属性
- JavaScript的全局属性和全局函数总结.........
- webpack如何全局引入jquery和插件?
- 引入内联函数的目的和作用
- 全局函数的声明和定义
- 关于全局变量和全局函数的声明
- 全局静态函数的定义和实现
- kotlin的入口函数
- 全局函数、成员函数和内联函数的总结
- 全局和局部函数
- Kotlin------函数和代码注释
- 3.kotlin 类和函数
- Kotlin学习(十三): 集合(Collections)和范围(Ranges)
- 类的成员函数和全局函数的互相调用
- 推荐一个C# GDI+ 自定义控件
- JavaEE中Web服务器、Web容器、Application服务器区别及联系
- 服务器域名解析速度慢
- 网狐荣耀版或其它安卓项目出现Application cannot be exported due to the error(s) below.错误的处理方法
- 尝试用图像处理来实现UI设计稿的自动标注
- Kotlin全局函数的引入和范围
- java远程修改服务器配置文件
- ATmega64看门狗问题
- testng源码阅读之入口在哪
- Codeforces510E Fox And Dinner(最大流-奇偶建图+路径打印)
- 数据从业者必备的一些网站和工具
- jenkins+svn+tomcat 配置自动部署流程
- 9月30日云栖精选夜读:阿里巴巴摘得LSVC桂冠 打造领先AI视频技术
- tomcat启动成功,访问tomcat主页显示404