1、中綴調用函數
能夠以如下形式建立一個 Map 變量3d
使用 「to」 來聲明 map 的 key 與 value 之間的對應關係,這種形式的函數調用被稱爲中綴調用component
中綴調用能夠與只有一個參數的函數一塊兒使用,不管是普通的函數仍是擴展函數。中綴符號須要經過infix修飾符來進行標記cdn
對於mapOf函數來講,它能夠接收不定數量的Pair類型對象,所以咱們也能夠經過自定義的中綴調用符test來建立一個 map 變量對象
2、解構聲明blog
有時會有把一個對象解構成多個變量的需求,在 Kotlin 中這種語法稱爲解構聲明it
例如,如下例子將 Person 變量結構爲了兩個新變量:name 和 age,而且能夠獨立使用它們io
一個解構聲明會被編譯成如下代碼:編譯
其中的component1()和component2()函數是在 Kotlin 中普遍使用的約定原則的另外一個例子。任何表達式均可以出如今解構聲明的右側,只要能夠對它調用所需數量的component函數便可class
須要注意的是,componentN()函數須要用operator關鍵字標記,以容許在解構聲明中使用它們
對於數據類來講,其自動生成了componentN()函數,而對非數據類,爲了使用解構聲明,須要咱們本身來手動聲明函數
若是咱們須要從一個函數返回兩個或者更多的值,這時候使用解構聲明就會比較方便了
這裏使用的是標準類 Pair 來包裝要傳遞的數據,固然,也能夠自定義數據類
此外,解構聲明也能夠用在 for 循環中
對於遍歷 map 一樣適用
一樣也適用於 lambda 表達式
若是在解構聲明中不須要某個變量,那麼能夠用下劃線取代其名稱,此時不會調用相應的componentN()操做符函數