源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

Kotlin基础教程之操作符与操作符重载

  • 时间:2021-09-29 14:39 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:Kotlin基础教程之操作符与操作符重载
[b]Kotlin基础教程之操作符与操作符重载[/b] Kotlin操作符的使用方法与其他语言差不多,最大的特点就在于infix function call(事实上infix function call并不是操作符的特性,而是函数的特性)和操作符重载. [img]http://files.jb51.net/file_images/article/201705/2017052711042994.png[/img] [img]http://files.jb51.net/file_images/article/201705/2017052711042995.png[/img] [img]http://files.jb51.net/file_images/article/201705/2017052711042996.png[/img] 可以看到在Kotlin中大部分的操作符都与一个函数相对应,之所以这样做,大概是为了进行操作符重载. Kotlin官方文档中强调"=赋值"操作在Kotlin中不是操作符,换句话说类似于x = y = z这样的连续赋值并不被允许(甚至赋值操作也不能和常规的表达式混合写). 我们知道在C++语言里面操作符就是一个函数,在Kotlin中也是如此. 至于infix function call,目前来看,如果在类中定义了只包含一个参数的函数,比如Int.plus(Int)函数是在Int类中定义,而且只有一个参数,那么这样的函数就可以简写.val x = 1.plus(1)可以简写为val x = 1 plus 1 上面的代码运行结果如下: [img]http://files.jb51.net/file_images/article/201705/2017052711042997.png[/img] 至于操作符重载,如下: [img]http://files.jb51.net/file_images/article/201705/2017052711043198.png[/img] 运行结果如下: [img]http://files.jb51.net/file_images/article/201705/2017052711043199.png[/img] 操作符重载并不能增加新的操作符,也不能改变操作符的优先级和结合性. 操作符的结合性(左结合,右结合)与Java相同,然而操作符的优先级官方文档并未给出,目前来看和Java并不完全相同,这主要是因为Kotlin中操作符和Java中性质并不完全相同. 感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部