kotlin運(yùn)算符重載

假期去了妹妹那一趟,這兩天大魚大肉伺候著,真的有點(diǎn)吃不消,再加上最近也沒運(yùn)動,去她那上稱一看,一百四十多了,還好一米八的個,看起來還不是太臃腫,今天坐車真的累,不得不吐槽虎門站的秩序有點(diǎn)亂啊,管理秩序太混亂了,好歹還是回來了,脫了衣服,先出去干了六公里多,洗了澡,發(fā)現(xiàn)上個星期說總結(jié)一下運(yùn)算符重載的,也沒弄,干脆睡覺前,總結(jié)總結(jié)。

什么是運(yùn)算符重載

如果了解c++的同學(xué),一定對這個概念不陌生。或者在java中我們對重載并不陌生,可能存在多個重名函數(shù),只是方法的參數(shù)不同而已,而加上運(yùn)算符,就僅僅只爭對我們的運(yùn)算符了。回顧一下平時用到的運(yùn)算符大多有以下這些:


算術(shù)運(yùn)算符

關(guān)系運(yùn)算符

賦值運(yùn)算符

上面是我們常運(yùn)的一些運(yùn)算符,當(dāng)然還有其他的一元運(yùn)算符,或者邏輯運(yùn)輸符,就不一一貼出來了。下面還是用例子,詳細(xì)說明運(yùn)算符重載。
我們就以我們常用的+=運(yùn)輸符聊起,任意舉例,原理都差不多,我們常用的list集合,裝入數(shù)據(jù)的時候通常只能用add()方法,我們能否使用+=運(yùn)算符重載完成了,還無疑問,當(dāng)然是可以的,

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"
}

總結(jié)

總體來說操作使用運(yùn)算符重載還是比較簡單,使用operator關(guān)鍵字,我們就可以隨便操作。只是概念的問題,掌握了對于我們寫出優(yōu)雅的代碼還是有很大幫助的。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容