Kotlin - kotlin basic (1) -- 直接入門

參考內容

kotlinlang.org

kotlin in chinese

1. package

kotlin 的 包和 java 基本相似,但有點不一樣;

關鍵字: as

示例代碼

package cn.labelnet.demo.basic

import cn.labelnet.demo.students.Student
import cn.labelnet.demo.students.*
// import 可以使用 as 關鍵字 可以取別名, java 不可以
import cn.labelnet.demo.students.Teacher as Tea

// main 函數
fun main(args: Array<String>) {
    val s = Student("kotlin", 2)
    val t = Tea("Java", 20)
    t.speak()
    val p = Programer("LABELNET")
}

2. var & val

關鍵字 : var , 聲明可變化的屬性
關鍵字 : val , 聲明只讀屬性

示例代碼

/**
 * val : 只可讀
 * var : 可改變的
 */
fun main(args: Array<String>) {
    val a = 1;
    a = 2; // error
    var b = 1;
    b = 2; // right
 }

3. 基本類型

3.1 kotlin 基本類型

數值類型

類型 位寬
Double 64
Float 32
Long 64
Int 32
Short 16
Byte 8

字符

Char 不可以當做數值使用

布爾

Boolean true/false

數組

Arrays 不可變的 ,IntArrays, ByteArrays

字符串

String 不可變的,元素 str[index] , 可以直接進行for循環元素

3.2 可爲空的類型

基本寫法 : kotlin 基本類型? (C#中早已有此寫法)

示例代碼

val a : Int? = 1

// 參數a 可爲 null
fun sum(a: Int?, b: Int): Int {
    if (a != null) {
        return a + b
    }
    return b
}

// 返回可爲 null 的值
fun checkType(obj: Any): Int? {
    if (obj is String) {
        return 1
    }
    return null
}

4. 函數默認值

默認值寫法與 es6 和 python 中的寫法類似

示例代碼

// 函數默認值
fun add(a: Int = 1, b: Int): Int {
    return a + b;
}

5. 字符串模板

屬性可以直接使用 $a
函數可以使用 ${funName}

示例代碼

  println("a = $a,b=$b,c=$c,d=${add(1, 20)}")

6. 函數

關鍵字 : fun

示例代碼

  • 函數名:sum
  • 參數: a Int類型,b Int類型
  • 返回值 Int類型
  • 函數修飾符 fun
fun sum(a: Int , b: Int) : Int{
  //方法內部
    return a + b
}

7. 註釋

和java一樣 ,行註釋與塊註釋

示例代碼

// 單行註釋

/*  這是塊註釋
    這是塊註釋 */

8.代碼風格

和 java 一樣

  • 使用駱駝命名法(在命名中避免下劃線)
  • 類型名稱首字母大寫
  • 方法和屬性首字母小寫
  • public 方法要寫說明文檔,這樣它就可以出現在 Kotllin Doc 中

9. Unit

關鍵字 : Unit

如果函數返回值爲 Unit ,應該省略

fun foo() { // ": Unit"被省略了
}

10. 實例

求 和 ?

實例代碼

package cn.labelnet.demo.basic

// main
fun main(args: Array<String>) {
    sumPrint(1, 2)
}

// method : sumPrint
fun sumPrint(a: Int, b: Int) {
    println("a+b=${a + b}")
}

代碼地址:

Simple A

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章