Kotlin中最常用的80個關鍵字

  1. fun 函數聲明
  2. val / var 變量聲明
  3. ${} 字符串模板
  4. import 導入任何種類的聲明
  5. enum class 枚舉
  6. when 分支表達式
  7. … 區間表達式(遞增,閉區間)
  8. until (遞增,開區間)
  9. for( a in…) 循環
  10. down To 遞減
  11. step設置步長
  12. in !in 判斷對象是否在集合或區間中
  13. const val 類似於Java中static final ,適用於所有基本數據類型和String類
  14. vararg 可變參數
  15. “*” 星號,展開運算符,用於數組,可以讓數組元素在函數中作爲單獨的參數來調用
  16. to 中綴調用, infix修飾函數,允許使用中綴符號
  17. interface 定義接口
  18. :繼承(實現)、函數返回值類型
  19. override重寫修飾符
  20. super.methor() 調用父類方法
  21. open 允許該類被繼承(方法被重寫),Kotlin中默認的類和方法都是final
  22. final 禁止該方法被重寫
  23. abstract 抽象
  24. public , private, protected, internal 可見性修飾符,默認public,internal模塊內可見
  25. inner 內部類
  26. 嵌套類 默認
  27. sealed 密封類
  28. constructor 構造方法
  29. init{} 初始化語句塊
  30. super(params…)調用父類的構造方法
  31. this(params…)調用自己類的其他構造方法
  32. field 訪問屬性的支持字段$field
  33. == 檢查相等性(類似於Java中的equals方法)
  34. === 進行引用比較
  35. is 等價於Java中的instanceOf
  36. data class 數據類(自動生成方法的實現類)
  37. by 委託
  38. object 聲明對象(單一實例,無構造方法)
  39. companion object 伴生對象(工廠方法,靜態成員)
  40. object : 聲明匿名內部類
  41. maxBy{} 指定比較哪個值找到最大元素,需要一個參數:一個函數
  42. it 默認參數名稱
  43. :: 成員引用(Person::age)
  44. {… -> …} Lambda表達式
  45. run{} 執行代碼塊
  46. filter 過濾(從集合中找尋滿足條件的所有元素)
  47. map 轉換(對集合中的每一個元素應用給定的函數並把結果收集到一個新集合)
  48. all 判斷集合中的所有元素是否滿足某個條件 返回布爾值類型
  49. any 判斷集合中是否至少有一個元素滿足條件 返回布爾值類型
  50. count 返回集合中滿足條件的個數
  51. find 找到集合中第一個滿足條件的元素,如果沒有返回Null 等價於 firstOrNull
  52. groupBy 根據條件把集合轉換成分組的map
  53. flatMap 根據作爲實參給定的函數對集合中的每個元素做變換,然後把多個列表合併成一個列表
  54. asSequence() 把任意的集合轉換成序列 (惰性操作)
  55. toList 把序列轉換成集合
  56. with(params){} with的返回值是lambda中最後一個表達式
  57. apply apply始終會返回作爲實參傳遞給它的對象(返回接收者的對象),返回第一個參數
  58. ? 允許變量爲null
  59. ?. 安全調用
  60. ?: Elvis運算符(不爲null就是前面的運算數,爲null就是後面的運算數)
  61. as? 安全轉換
  62. !!. 非空斷言
  63. let函數 ?.let{} 把調用Lei函數的可空對象轉換成非空類型
  64. lateinit 延遲初始化, 所有延遲初始化都是var類型
  65. Any , Any? 根類型(前者非空,否則可爲空)
  66. Unit Kotlin中的void
  67. Nothing 這個函數永不返回
  68. operator 重載符號
  69. a[index] 下標運算符 重載get()方法
  70. in 檢查某個對象是否屬於集合
  71. rangeTo 創建區間…
  72. by 委託
  73. by lazy{} 延遲初始化
  74. inline 內聯函數關鍵字,作用:銷除lambda帶來的運行開銷
  75. where 指定泛型的多個約束
  76. reified 具體化,使用inline來修飾函數,reified來修飾類型形參,作用:可以在運行時引用實際的類型參數
  77. ::class.java 獲取java.lang.Class對應的Kotlin類
  78. out 泛型中協變關鍵字 作用:保留子類型化關係,泛型T只能用在out位置(返回值)相當於Java中的extends
  79. in 逆變,可以看作是協變的鏡像 相當於Java中的super
  80. @ 應用註解,lambda中做局部返回
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章