kotlin學習筆記(三)

2021-08-10 13:05:55 字數 965 閱讀 8579

一、for

for迴圈的三種方式,只要實現

了iterator,都可以使用for迴圈。

fun main(args: array)

for ((index, value) in list.withindex())

for (indexvalue in list.withindex()) +$") }

} 二、具名引數 變長引數 預設引數

具名引數:在傳參的同時,使用 引數名

= 值 的方式,將值傳給某個具體引數。

變長引數:使用vararg,可傳入多個值,或傳入array(前帶*),變長引數後的引數需使用具名引數。

變長引數:可賦予某個引數某個預設值,當該引數未傳值時,即為該預設值。

fun main(args: array)

fun test(p1: string = "11", vararg p2: int, p3: int)

三、抽象類 介面

inte***ce inputdevice

inte***ce usbinputdevice : inputdevice

inte***ce bleinputdevice : inputdevice

abstract class usbmouse(val name: string) : usbinputdevice }

class logmouse : usbmouse("羅技")

class computer

fun addbleinputdevive(inputdevice: bleinputdevice)

fun addinputdevice(inputdevice: inputdevice)

is bleinputdevice ->

else -> }

} }

Kotlin學習筆記(三) Kotlin密封類

前言 密封類,可以理解為列舉,規定了有限個型別,不可以存在其他型別,但列舉每個列舉常量只存在乙個示例,但是密封類的子類可以有多個示例,所以可以將密封類看做是列舉的拓展,基於列舉,高於列舉,青出於藍而勝於藍。正文密封類和普通類的區別,在於密封類使用了sealed修飾符,雖然密封類也可以有子類,但是所有...

kotlin學習筆記

屬性委託在單獨一頁中講 屬性委託。委託模式已經證明是實現繼承的乙個很好的替代方式,而 kotlin 可以零樣板 地原生支援它。derived類可以通過將其所有公有成員都委託給指定物件來實現乙個介面base inte ce base class baseimpl val x int base clas...

Kotlin學習筆記

該系列文章是本人梳理kotlin基礎知識所作,時間倉促可能會有不足,歡迎指正!kotlin學習筆記 1 基礎語法 kotlin學習筆記 2 基本資料型別,字串與陣列 kotlin學習筆記 3 條件控制與迴圈控制 kotlin學習筆記 4 容器 kotlin學習筆記 5 泛型和高階函式應用 kotli...