【Kotlin入門之路】基礎語法

Hello World

老規矩,讓我們懷念一下——用Kotlin輸出Hello, World!

fun main() {
	println("Hello World")
}

和其他語言相似,Kotlin也是以main()函數作爲程序運行的入口的。

變量聲明

Kotlin聲明變量使用兩個關鍵字:valvar

  • val:聲明一個值不可更改的變量。可以在聲明的適合初始化,也可以先聲明後初始化,一旦初始化,就不能再對它重新賦值,否則報錯。可以把使用這個聲明的變量理解爲一個“常量”。
  • var:聲明一個值可更改的變量。

提到變量聲明,不得不說變量的類型。Kotlin內置衆多數值類型:

關鍵字 範圍
Int
Byte
Short
Long
Float
Double

Kotlin中聲明變量的語法——變量類型寫在變量名後面:

val constant: Int = 1 /* 聲明一個名爲constant的Int型的“不可變”變量 */
var variable: Byte /* 聲明一個名爲variable的Byte型的“可變”變量 */

注意:Kotlin語句不使用;(分號)結尾。(當然,加上似乎也不會報錯)
建議:明確valvar的使用,優先考慮使用val

函數聲明

函數的聲明使用fun關鍵字(和JavaScript相似),下面聲明瞭一個沒有返回值的函數:

fun myFunc() {
	// TODO
}

有返回值的怎麼聲明呢?參考變量的聲明:

fun myFunc(): String  {
	return "Hello Kotlin"
}

當然,Kotlin支持這麼玩:

fun myFunc(): String  {
	return if (true) {
		"True"
	} else {
		"False"
	}
}

上面這個有點類似於C/C++語言中的冒號表達式condition ? true : false(很可惜,Kotlin不支持這個)。

還可以這麼玩

fun myFunc(): String = if(true) {
		return "True"
	} else {
		return "False"
	}

這種情況可以看成是將return關鍵字用=替換了。
很容易推想出,需要給傳入參數的話,這麼定義:

fun myFunc(id: Int): String = if(id) {
		return "True"
	} else {
		return "False"
	}

匿名函數

Kotlin支持匿名函數。匿名函數就是沒有函數名稱的函數。
舉個例子:
定義一個匿名函數:

val strLenFunc: (String) -> Int = { input ->
	input.length
}

該函數完成的功能是接收一個字符串類型的變量輸出,然後輸出它的長度(類型爲整型值)。
調用該匿名函數:

val strLen: Int = strLenFunc("Kotlin")

不難看出,除了定義的時候有些奇特,調用匿名函數的時候跟普通函數差不多。

高階函數

函數也是分階級的。一個函數可以將另一個函數當作參數,將其他函數用作參數的函數稱爲高階函數
舉個例子:

fun strMapper(str: String, mapper: (String) -> Int): Int {
	return mapper(str)
}

類的聲明和定義

和C++、Java一樣,是通過關鍵字class來完成。
如果沒有顯示聲明,類中出現的變量、函數的訪問類型均爲public,即可從外部訪問。

發佈了15 篇原創文章 · 獲贊 9 · 訪問量 8萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章