kotlin 官方學習教程之語法

2021-08-01 07:32:02 字數 2412 閱讀 4009

這是 kotlin 學習教程第二篇,為大家講解 kotlin 的語法。因為本系列文章是作者翻譯官方文件而來,所以有一些描述可能不太正確,建議大家都到官網執行一下例項,有助於理解。

data class customer

(val

name: string, val

email: string)

提供帶有下列功能的 customer 類:

fun foo(a: int = 0, b: string = "")
val positives = list.filter
或者,可以更簡潔一些:

val positives = list.filter
println("name $name")
when (x)
for ((k, v) in map)
k,v 可以呼叫任意事件

for (i in

1..100) // 閉區間:包括 100

for (i in

1 until 100) // 半開半閉區間: 不包括 100

for (x in

2..10 step 2)

for (x in

10 downto 1)

if (x in

1..10)

val

list = listof("a", "b", "c")

val map = mapof("a"

to1, "b"

to2, "c"

to3)

println(map["key"])

map["key"] = value

val p: string by lazy
fun string.spacetocamelcase() 

"convert this to camelcase".spacetocamelcase()

object

resource

val files = file("test").listfiles()

println(files?.size)

val files = file("test").listfiles()

println(files?.size ?: "empty")

val data = ...

val email = data["email"] ?: throw illegalstateexception("email is missing!")

val data = ...

data?.let

fun transform(color: string): int 

}

fun test()  catch (e: arithmeticexception) 

// 與 result 一起工作

}

fun foo(param: int)  else

if (param == 2) else

}

fun arrayofminusones(size: int): intarray
fun theanswer() =42
這相當於:

fun theanswer(): int
這可以與其它語法有效的組合在一起,簡化**。如:與 when 表示式:

fun transform(color: string): int = when (color)
class

turtle

val myturtle = turtle

()with(myturtle)

penup()

}

val stream = files.newinputstream(paths.get("/some/file.txt"))

stream.buffered().reader().use

//  public final class gson  else

Firefly官方教程之DBentrust使用文件

1 dbentrust說明 該模組主要是對資料庫與memcached儲存的處理。裡面封裝了從memcached資料到python物件的對映。可以以操縱python物件的方式進行memcached中儲存的資料的操作,只要在不同的程序中例項化相同名稱的memobject物件,就能保證物件中的資料是一致的...

Oracle官方教程之Fork Join

ork join框架是executorservice介面的一種具體實現,目的是為了幫助你更好地利用多處理器帶來的好處。它是為那些能夠被遞迴地拆解成子任務的工作型別量身設計的。其目的在於能夠使用所有可用的運算能力來提公升你的應用的效能。類似於executorservice介面的其他實現,fork jo...

Oracle官方教程之Fork Join

ork join框架是executorservice介面的一種具體實現,目的是為了幫助你更好地利用多處理器帶來的好處。它是為那些能夠被遞迴地拆解成子任務的工作型別量身設計的。其目的在於能夠使用所有可用的運算能力來提公升你的應用的效能。類似於executorservice介面的其他實現,fork jo...