Kotlin 基本語法--2017.06.20

該文為個人學習筆記,如有錯誤,請各位大佬指導~~~

針對于一些未具體說明知識點,后續會進行補充。

知識點可能會有點雜亂無章,請各位擔待。

關鍵字

1.申明:

--open override fun inline inner internal data companion object lateinit var val

2.判斷:

--when in is

3.運算:

--and or

4.類型:

--Any Unit

5.基本類型:

--Boolean Byte Short Int Long Float Double Char

6.其他

--by as lazy init downTo

----------------------------------------------------------------------------------------------

一.對象

1.static 變量或者方法:companion object

--eg.

companion object{

//TODO 進行編寫~~~

}

2.變量類型:var 表示的是“通常的變量”,val 則表示的是“不可變變量”

變量類型是寫在變量名之后的,用英文冒號 : 隔開,類型聲明不是必須的,如果后面的值是一個明顯可識別的類型,就不必添加類型聲明。

--eg.

val SHARE_GOOGLE_PLUS: Int = 0x1001

或者

val SHARE_GOOGLE_PLUS = 0x1001

var subject = ""

3.創建對象

var view: View = View(activity)

----------------------------------------------------------------------------------------------

二.方法

1.方法申明;fun

2.重寫父類方法: override 關鍵字

--eg.

override fun xxx(){}

3.方法參數:對象:類名

--eg.

override fun share(activity: Activity, shareContent: ShareContent

, listener: ShareListener) {

}

----------------------------------------------------------------------------------------------

三.類

1.繼承、實現: 使用分號

--eg.

--繼承

class ShareImageToEmail : ShareLocalImage(){}

--實現接口

class TestImp :Test{}

2.構造函數

--eg.

constructor(){

}

3.繼承+多接口實現

class ShareImp:Extents(),Imp1,Imp2{}

----------------------------------------------------------------------------------------------

四.判斷使用規則

1.針對于對象使用前判空 : ?修飾

--eg.

listener?.onError(shareContent.platform, IllegalArgumentException(""))

2.保證該變量在后續使用中不會出現為空情況: !! 修飾

--eg.

if (null != listener) {

startIntent(activity, listener!!, shareContent)

}

----------------------------------------------------------------------------------------------

備注:

1.kotlin 的關鍵字與java 不同~~~~ 比如 in 、 is 、 data 使用時,需要用單引號進行修飾

--eg.

‘is’

2.使用when關鍵字代替if

--eg.

var view: View = View(activity)

when (view) {

is TextView -> toast("")

else -> toast("")

}

3.in

--eg.

val list = arrayListOf(1,2,3,4)

list.add(5)

list.remove(3)

for(item in list){

//TODO

}

4.by

5.is

--is 和java中instanceof是一個作用判斷是否為某個類型。!is即判斷不是某個類型。

6.$ 字符模板? $<變量>、${<變量>}

--eg.

"$str" 值

"${tvContent?.text}" 對象的值

"${init("", "")}" 方法

7.枚舉

--eg.

enum class Color{

RED,BLACK,BLUE,GREEN,WHITE

}

8.downTo

9.step

10.vararg

11.as

1)導入包時,可以設置類的別名

--eg.

import android.widget.TextView as tv

2.初始化變量時

--eg.

12.Unit 返回值

--與void 相似 可以不寫~~~

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容