Kotlin 简介
Kotlin 是一种由 JetBrains 开发的静态类型编程语言,设计用于与 Java 虚拟机 (JVM) 兼容,同时也可用于 Android、JavaScript(通过 Kotlin/JS)和原生(通过 Kotlin/Native)开发。Kotlin 旨在提供比 Java 更简洁、更安全的代码,同时保持与 Java 的完全互操作性。
变量与函数的使用
变量
在 Kotlin 中,变量可以用 var 或 val 关键字来声明。var 用于可变变量,而 val 用于不可变变量(只读变量)。
kotlin复制代码
|---|---------------------------------------|
| | var name: String = "Alice" // 可变变量 |
| | val age: Int = 30 // 不可变变量 |
| | |
| | // 可以省略类型声明,Kotlin 会自动进行类型推断 |
| | var name2 = "Bob" |
| | val age2 = 25 |
函数
Kotlin 中的函数定义使用 fun 关键字。
|---|-------------------------------------------|
| | fun greet(name: String): String { |
| | return "Hello, $name!" |
| | } |
| | |
| | // 使用函数 |
| | val greeting = greet("Kotlin") |
| | println(greeting) // 输出:Hello, Kotlin! |
| | |
| | // 对于只有一个表达式的函数,可以使用表达式体语法 |
| | fun double(x: Int) = x * 2 |
逻辑控制
If 语句
Kotlin 中的 if 语句与 Java 类似,但更简洁。
|---|----------------------------------|
| | val number = 10 |
| | if (number > 0) { |
| | println("Number is positive") |
| | } else if (number < 0) { |
| | println("Number is negative") |
| | } else { |
| | println("Number is zero") |
| | } |
When 语句
Kotlin 中的 when 语句类似于 Java 的 switch 语句,但功能更强大。
|---|-----------------------------------------------|
| | val x = 2 |
| | when (x) { |
| | 1 -> println("One") |
| | 2 -> println("Two") |
| | else -> { // 注意这里的代码块 |
| | println("Neither 1 nor 2") |
| | } |
| | } |
| | |
| | // when 语句也可以用于非数值类型 |
| | val fruit = "apple" |
| | when (fruit) { |
| | "banana" -> println("I'm a banana.") |
| | "apple" -> println("I'm an apple.") |
| | else -> println("I don't know what I am.") |
| | } |
循环语句
Kotlin 支持多种循环结构,包括 for、while 和 do-while。
For 循环
|---|------------------------------------------|
| | for (i in 1..5) { // 闭区间,包含5 |
| | println(i) |
| | } |
| | |
| | for (i in 1 until 5) { // 左闭右开区间,不包含5 |
| | println(i) |
| | } |
| | |
| | val list = listOf("a", "b", "c") |
| | for (item in list) { |
| | println(item) |
| | } |
While 循环
|---|--------------------|
| | var i = 0 |
| | while (i < 5) { |
| | println(i++) |
| | } |
Do-While 循环
|---|-------------------|
| | var j = 0 |
| | do { |
| | println(j++) |
| | } while (j < 5) |