Kotlin入門 嗯,我有別名,什麼名稱都變短

2021-09-28 06:25:22 字數 1035 閱讀 8986

自kotlin 1.1起,型別別名(type alias)為現有型別提供替代名稱,

如果型別名稱太長,可引入較短別名替代原型別名!

//縮短較長泛型型別(generic type)是很有吸引力的

typealias nodeset = settypealias filetable= mutablemap>
typealias myhandler = (int, string, any) -> unit

typealias predicate= (t) -> boolean

class a 

class b

typealias ainner = a.inner

typealias binner = b.inner

型別別名不會引入新型別,換言之,別名是一種編譯器的手段,底層不動的情況下,友好了編碼實現。

編譯器會把別名翻譯為原有型別:

看個範例

typealias predicate= (t) -> boolean

fun foo(p: predicate) = p(42)

fun main(args: array)

println(foo(f)) // 輸出 "true"

val p: predicate=

println(listof(1, -2).filter(p)) // 輸出 "[1]"

}

新增別名宣告typealias predicate後,kotlin編譯器總是把它擴充套件為(int) -> boolean

kotlin寫了那麼多章節,總結起來,它是在編譯期,簡化了 程式設計師的編碼工作量,減少重複**強度的編碼語言。更簡潔。而且,支援 ios、android、web,的確,通過編譯期的強化,可以提供更好的編碼書寫支援。

嗯,我的Ip被封了

由於您當前網路訪問頁面過於頻繁,可能存在安全風險,我們暫時阻止了您的本次訪問,24小時將自動解除限制。官方提供了了解決思路 1.動態設定user agent 2.禁用cookies 4.使用google cache 5.使用ip位址池 tor project vpn和 ip 6.使用crawlera...

Kotlin入門筆記

2017 年 5 月的 google i o 中宣布 kotlin 這門程式語言成為 android 新官方語言 以fun為定義方法的關鍵字 引數型別放在引數名之後,以冒號分割 不用再class裡面宣告方法 沒有省略號 語法糖 system.out.println 封裝為println arrays...

Kotlin協程快速入門

協程,全稱可以譯作協同程式,很多語言都有這個概念和具體實現,之前入門python的時候接觸過,而kotlin其實也早就有這個擴充套件功能庫了,只不過之前一直處於實驗階段,不過前段時間1.0的正式版終於出了,網上的相關部落格也多了起來,經過這幾天的學習我也來做下小結吧。首先貼下kotlin協程的官方g...