天天看點

自學Kotlin,每天更新複習

第二天

工作之餘看看書,敲敲代碼,複習,水準有限,第一次寫,隻是做個筆記而已  今天第二天2018年03月08日16:54:07

1.fun聲明函數,var聲明可變變量,val隻讀變量 比如val a = 1 這個a就不能在指派了,但是可以給這個隻讀變量的對象裡面的屬性指派  比如 val list = arrayList<Int>()  list.add(1)...  這些實際上就是調用的java的arrayList  ,聲明對象不需要new

2.字元串裡面帶變量用$變量 就行 ,對象的話用${對象},就跟java的stringFormat一樣。

3.kotlint 裡面的if是有傳回值的 比如 if(a > b) a else b 相當于java的 a>b ? a: b;

4.kotlint裡面的函數可以直接傳回表達式 fun getName(name : String) = if(name.equals("a")) true else false,隻要是表達式都有傳回值,同樣都可以直接給函數指派 上面的方法相當于

 fun getName(name : String) : Boolean{

      if(name.equals("a")) 

        return true

    else 

        retutn false

 }

同樣也相當于

 fun getName(name : String) : Boolean{

      return if(name.equals("a")) true else false;

 }

5.kotlin裡面代碼每行不必要加上;  我是習慣每行後面都加上,

6.kotlin寫實體類

constructor 就是構造方法的構造器,  同樣還可以這樣寫 

但是要在init方法裡面初始化

7.Enum 枚舉類跟java的差不多,周遊枚舉類用when,when是一個表達式,有傳回值,可以直接當做函數的傳回值

第二個when參數的話,必須要加一個else,when還能列舉set跟map,功能比java的switch 還要強大

8.循環while ,do while跟java的差不多 

還有就是for循環

for(a in 0..100 ) {}  表示循環周遊0-100  ,還能周遊map, for((key ,value) in hasmap){} 

9.另外就是可以直接把java類轉換成kotlin類的 ,裡面的方法也會轉換 

10.kotlin 比java更加簡單,裡面的類型大多數都會自動轉換的。

11. val list =arrayListOf("xx","ss")這個就是java的建立一個list,kotlin沒有自己的集合類,都是标準的java類,

list.JavaClass 就是java的list.getClass  ,實際上就是一個java類  java.util.ArrayList

12.為什麼要學kotlin,因為它太強大了,能相容java,實際上最後都是編譯成.class類,可以運作在jvm,android開發的首選語言,可以開發背景服務端,可以寫用kotlin代碼寫js,文法簡單,這個每天都會更新,都是我自己了解的,有不對的大家不要見怪