當前位置: 首頁>>技術教程>>正文


Kotlin編程語言10分鍾速成

什麽是Kotlin,在哪裏使用?

Kotlin是一種跨平台、靜態類型的通用編程語言。這裏簡單介紹下這三個特點。

跨平台:這意味著係統或產品可以跨多個平台或操作係統環境工作。例如,Microsoft Excel,Word,Powerpoint可在Windows和Macintosh操作係統上使用。

靜態類型:靜態類型意味著必須在程序中明確聲明使用的變量及其類型(數據類型)。例如,C,Java,Kotlin等等都是靜態類型的。參考以下用於靜態類型編程的C編程代碼。

// C programming code
# include 
void main()
{
  int num;    // Explicitly declaring the type of the variable
  num = 10;
  print(num);
}

靜態類型的相反是動態類型,在這裏您不必顯式指定數據的類型。最好的動態類型化編程語言之一是python。參考下麵的以下python代碼:

# Python Code
num = 10   # No explicit declaration
print(num)

通用編程:顧名思義,它廣泛適用於所有領域。例如,Java,Python,C,C++等都是通用編程語言。

現在您已經了解了Kotlin的定義,下一步是在哪裏使用它? Kotlin用於Android開發,以創建android應用程序。以前,Java用於創建Android應用程序,但從幾年前開始,Kotlin慢慢取代了Java在Android開發中的位置。

Andorid開發Kotlin取代JAVA

來源:巴布沙布·帕蒂爾

如上所示,Kotlin在2019年已占據絕對主導地位,現在幾乎所有的android應用都是使用Kotlin構建的。

讓我們開始編碼

我們用IntelliJ IDEA編寫代碼。 IntelliJ IDEA是用於開發計算機軟件的Java集成開發環境。它是由JetBrains公司開發的。

IntelliJ IDEA
來源:IntelliJ

為了下載IntelliJ請點擊這裏。下載與筆記本電腦兼容的任何版本,然後開始使用。

下麵列出的是Kotlin入門所需的一些主要概念。

1)Main函數

與其他編程語言一樣,在Kotlin中,必須要有Main函數。那是編譯器開始編譯程序的地方。在Kotlin中,Main函數可以編寫如下:

fun main() {
    println("Hello Kotlin")   //Printing "Hello Kotlin"
}

我在Main函數中包含了一條打印語句,以使其更易於理解。在執行Main函數時,我得到了“Hello Kotlin”作為輸出。


2)變量聲明

在Kotlin中,可以使用兩個關鍵字聲明變量,即valvar

val: It is used for variables whose value never changes. 
var: It is used for variable whose value can change.

對於值val類型,您不能重新賦值,而對於var類型您可以重新賦值。

在Kotlin中聲明變量的語法是:

keyword variable_name: data_type = value

a)下麵是用於關鍵字val聲明的代碼片段:

val number: Int = 10

fun main() {
    println(number)    // 10
}

當我嘗試給val變量重新賦值時,我會收到一條錯誤消息,指示無法重新分配變量值,因為我使用了val關鍵字。

val number: Int = 10

fun main() {
    number = 20      
    println(number)   // Error
}

b)以下是關鍵字var聲明的代碼片段:

var number: Int = 10

fun main() {

    println(number)  // 10
}

當我嘗試給var變量重賦值時,這次不會出錯,因為可以對var關鍵字聲明的變量重新分配變量值。

var number: Int = 10

fun main() {
    number = 20
    println(number)   //20
}

同樣,您可以聲明Strings、Boolean、Float和更多數據類型。

通常,var被稱為讀寫引用,而val被稱為隻讀引用。我們將無法為val重新分配值,但可以修改屬性。

fun main() {
    val list = mutableListOf("a", "b", "c", "d")
    println(list)
    list = mutableListOf("d", "e)"    // Error

    list.remove("a")
    println(list)
}

類型推斷

類型推斷是指在編譯期間自動檢測變量的數據類型。在Kotlin中,類型是在變量名之後定義的:

var title: String

例如,如果為變量分配類型,則不能通過為同一變量重新分配其他類型來執行此操作,這將導致錯誤:

fun main() {
    var name: String = "Tanu"
    name= 12
    println(name)     // Error
}

但是,使用關鍵字“Any”您可以將Int分配給String或將String分配Int,如下所示:

fun main() {
    var name: Any = "Tanu"
    name = 12
    println(name)      //12
}

3)Null安全

Kotlin變量默認情況下無法保存null變量,因此,要保存null變量,您必須使用如下所示的其他語法,您要做的就是在變量聲明的前麵添加“?”

var number: Int? = null
fun main() {

    println(number)   // null
}

如果不這樣做,您會收到一條錯誤消息:“空值不能是非空類型int的值”(“Null can not be a value of non-null type int”)。


4)條件語句

像許多編程語言一樣,Kotlin也有幾種條件語句機製。最常見的條件語句是if-else語句。如果條件為true,則執行if部分;如果條件為false,則執行else部分。

var num: Int = 10

fun main() {

    if(num == 10)
    {
        num = num + 10
        println(num)   //20
    }

    else
    {
        num = 10
        println(num)
    }

}

您也可以同時使用多個if-else和else語句,如下所示:

var num: Int = 30

fun main() {

    if(num == 10)
    {
        num = num + 10
        println(num)
    }

    else if (num >= 10)
    {
        num = num + 20
        println(num)     //50
    }
    else if(num >= 20)
    {
        num = num + 30
        println(num)
    }
    else
    {
        print(num)
    }
}

在Kotlin中,您還可以使用when表達式替換多個if-else,如下所示:

val number: Int = 100
val answer = when {
    number == 42 -> "Best"
    number > 35 -> "Good"
    else -> "Worst"
}

fun main() {
    println(answer)    //Good
}

5)函數

函數是用於執行單個任務的有組織且可重用的代碼塊。在Kotlin中,要創建函數,您必須使用fun關鍵字,接著定義該函數輸入的數據類型,最後必須返回該函數的輸出。該函數的語法如下所示:

fun function_name(): data_type{
    statement 1
    statement 2
    -
    -
    -
    statement n
    return function_name
}

語句1、2和n隻是可執行語句,或者也稱為函數的主體,必須將其放置在函數中。考慮一個例子:

fun add_two_numbers(): Int{
    val num1: Int = 10
    val num2: Int = 20
    val num3: Int = num1 + num2

    return num3
}

fun main() {
    println(add_two_numbers())
}

以兩個參數為輸入的函數

在這種情況下,您要做的就是將兩個參數傳遞給函數,然後聲明它們的類型,然後可以通過將值作為輸入傳遞來調用函數:

fun add_two_numbers(num1: Int, num2: Int ): Int{

    val num3: Int = num1 + num2

    return num3
}

fun main() {
    println(add_two_numbers(10, 20))    // 30
}

6)類及其屬性

在Kotlin中,為了聲明一個類,您需要使用關鍵字class然後才是它的屬性。該類的語法及其屬性如下所示:

class class_name{
    properties of a class
}

類使用屬性表示狀態。屬性是類級別的變量,可以包含getter,setter和backing字段。對象是類的實例,借助於對象,我們可以訪問類的變量。例如:

class dog {
    var name: String = "Danny"
    var breed: String = "Boxer"
    var color: String = "White"
}

fun main() {
    var d = dog()
    println(d.name)      //Danny
    println(d.breed)     //Boxer
    println(d.color)     //White
}

7)從用戶那裏獲得輸入

為了獲得用戶的輸入,Kotlin提供了一種特殊的方法,稱為readline,他用於按行讀取用戶輸入。例如:

fun main() {
    var name: String? = null
    println("Enter your name")

    name = readLine()
    println("Your name is: $name")  // Tanu Nanda Prabhu
}

以上是您學習Kotlin編程需要了解的一些重要概念。但是,這並不是Kotlin學習的結束,而僅僅是開始。有關Kotlin的更多詳細信息,建議您通過官方Kotlin文檔嘗試進一步了解。


參考資料

本文由《純淨天空》出品。文章地址: https://vimsky.com/zh-tw/article/4536.html,未經允許,請勿轉載。