美文网首页
kotlin运算符重载

kotlin运算符重载

作者: 辉涛 | 来源:发表于2022-01-02 21:51 被阅读0次

    假期去了妹妹那一趟,这两天大鱼大肉伺候着,真的有点吃不消,再加上最近也没运动,去她那上称一看,一百四十多了,还好一米八的个,看起来还不是太臃肿,今天坐车真的累,不得不吐槽虎门站的秩序有点乱啊,管理秩序太混乱了,好歹还是回来了,脱了衣服,先出去干了六公里多,洗了澡,发现上个星期说总结一下运算符重载的,也没弄,干脆睡觉前,总结总结。

    什么是运算符重载

    如果了解c++的同学,一定对这个概念不陌生。或者在java中我们对重载并不陌生,可能存在多个重名函数,只是方法的参数不同而已,而加上运算符,就仅仅只争对我们的运算符了。回顾一下平时用到的运算符大多有以下这些:


    算术运算符
    关系运算符
    赋值运算符

    上面是我们常运的一些运算符,当然还有其他的一元运算符,或者逻辑运输符,就不一一贴出来了。下面还是用例子,详细说明运算符重载。
    我们就以我们常用的+=运输符聊起,任意举例,原理都差不多,我们常用的list集合,装入数据的时候通常只能用add()方法,我们能否使用+=运算符重载完成了,还无疑问,当然是可以的,

    inline operator fun <T>MutableList<in T>.plusAssign(e:T){
        this.add(e)
    }
    
    fun main(args: Array<String>) {
        println("Hello World!")
        val list = mutableListOf<String>()
        list += "aa"
        list += "bb"
    }
    

    总结

    总体来说操作使用运算符重载还是比较简单,使用operator关键字,我们就可以随便操作。只是概念的问题,掌握了对于我们写出优雅的代码还是有很大帮助的。

    相关文章

      网友评论

          本文标题:kotlin运算符重载

          本文链接:https://www.haomeiwen.com/subject/jnktcrtx.html