学习 Kotlin语言(简称 KT )一文看懂重要知识点

目录

1. Kotlin 基本语法

2. 数据类型和类型推断

3. 函数声明

4. 控制流

5. 循环

6. 类和对象

7. 继承和多态

8. 空安全(Null Safety)

9. 集合

10. Lambda 表达式和高阶函数

11. 扩展函数

12. 数据类(Data Class)

13. 协程(Coroutines)

总结


学习 Kotlin(简称 KT 语言)是一个很好的选择,尤其是如果你对 Android 开发或 JVM 语言感兴趣。Kotlin 语法简洁、强类型且具有较高的可读性。学习 Kotlin 时,你需要掌握以下几个主要的知识点:

1. Kotlin 基本语法

变量声明

Kotlin 使用 val(不可变)和 var(可变)声明变量。

val name: String = "Alice"  // val 声明的变量不可更改
var age: Int = 25  // var 声明的变量可以更改
age = 26  // 允许修改
注释

Kotlin 的注释与 Java 类似,有单行和多行注释。

// 这是单行注释
/* 这是多行注释 */

2. 数据类型和类型推断

Kotlin 是强类型语言,但它具有类型推断功能,大多数情况下可以省略类型声明。

val num = 10  // Kotlin 会自动推断 num 为 Int 类型
val name = "Kotlin"  // 推断为 String 类型

3. 函数声明

Kotlin 的函数定义非常简洁,用 fun 关键字声明函数。

fun greet(name: String): String {
    return "Hello, $name"
}

// 单表达式函数可以简写
fun sum(a: Int, b: Int): Int = a + b

4. 控制流

条件表达式

Kotlin 的 if 可以作为表达式返回值,也可以作为传统的条件判断。

val max = if (a > b) a else b  // 作为表达式使用
when 表达式

when 类似于 Java 中的 switch,但功能更强大。

val result = when (num) {
    1 -> "One"
    2 -> "Two"
    else -> "Unknown"
}

5. 循环

Kotlin 支持 forwhile 循环。

for 循环

可以迭代集合、范围等。

for (i in 1..5) {  // 闭区间,包含5
    println(i)
}
while 循环
var i = 5
while (i > 0) {
    println(i)
    i--
}

6. 类和对象

Kotlin 是面向对象的语言,支持类和对象的概念。

类的定义
class Person(val name: String, var age: Int)  // Kotlin 中类可以有主构造函数
创建对象
val person = Person("Alice", 25)
println(person.name)  // 访问属性

7. 继承和多态

Kotlin 中类默认是 final 的,无法被继承。使用 open 关键字允许继承。

open class Animal {
    open fun sound() {
        println("Animal Sound")
    }
}

class Dog : Animal() {
    override fun sound() {
        println("Woof")
    }
}

val dog = Dog()
dog.sound()  // 输出 "Woof"

8. 空安全(Null Safety)

Kotlin 强调空安全,默认情况下变量不能为 null。如果变量可以为 null,需要在类型后加 ?

var name: String? = null  // 可以为 null

可以使用 ?. 来安全调用可为空的对象。

val length = name?.length  // 如果 name 为 null,则 length 也是 null

9. 集合

Kotlin 提供强大的集合框架,包括 List, Set, Map,且分为可变和不可变两种。

不可变集合
val numbers = listOf(1, 2, 3)  // 不可变列表
可变集合
val mutableNumbers = mutableListOf(1, 2, 3)
mutableNumbers.add(4)

10. Lambda 表达式和高阶函数

Kotlin 支持函数式编程,可以将函数作为参数传递,Lambda 表达式就是一种简写形式。

val sum = { a: Int, b: Int -> a + b }
println(sum(1, 2))  // 输出 3
高阶函数
fun performOperation(a: Int, b: Int, operation: (Int, Int) -> Int): Int {
    return operation(a, b)
}

val result = performOperation(3, 4, sum)
println(result)  // 输出 7

11. 扩展函数

Kotlin 可以通过扩展函数为现有类添加新功能,而不需要继承或修改原有类。

fun String.lastChar(): Char = this[this.length - 1]
println("Kotlin".lastChar())  // 输出 "n"

12. 数据类(Data Class)

data class 是一种特殊的类,自动为你生成 equals, hashCode, toString 等方法。

data class User(val name: String, val age: Int)

val user = User("Alice", 25)
println(user)  // 输出 "User(name=Alice, age=25)"

13. 协程(Coroutines)

Kotlin 协程是一种轻量级的并发工具,适合异步编程。

import kotlinx.coroutines.*

fun main() = runBlocking {
    launch {
        delay(1000L)
        println("World!")
    }
    println("Hello,")
}

以上代码会输出:

Hello,
World!

总结

学习 Kotlin 需要掌握基本语法、控制流、函数式编程、面向对象编程等。同时,Kotlin 还提供了很多现代编程语言的特性,如空安全、扩展函数和协程。学习时可以通过逐步实现小项目加深理解。

猜你喜欢

转载自blog.csdn.net/LLZjiayou/article/details/142981608