CodeRoadMap
首页路线题库资源库文章社区
CodeRoadMap

程序员的学习成长路线图。内容免费开放,登录后可同步路线图与课时进度。

由 程序员柏风 独立维护 · 关于作者

学习

  • 路线图
  • 课程
  • 面试题
  • 文章
  • 我

更多

  • 资源
  • 社区
  • 关于作者
  • 内容说明

© 2026 CodeRoadMap

津ICP备2026012044号-1·津公网安备12011002026155号·coderoadmap@126.com
Kotlin 语言入门/课时/基础语法与类型
RawBlame
课时目录12 节

Kotlin 语言入门

  1. 01Kotlin 是什么
  2. 02基础语法与类型
  3. 03控制流
  4. 04函数与 Lambda
  5. 05集合 API
  6. 06类与 OOP
  7. 07空安全
  8. 08协程
  9. 09JVM 与 Spring
  10. 10Android 与 Compose
  11. 11Ktor 服务端
  12. 12综合练习

基础语法与类型

val/var、基本类型、字符串模板。

35 分钟

基础语法与类型

Kotlin 语法比 Java 更简洁:val/var 替代类型声明,when 替代复杂 switch,字符串模板内置。类型系统与 Java 基本对应,但默认不可空。

学习目标

  • 掌握 val(只读)与 var(可变)的声明与类型推断
  • 理解基本类型、字符串模板与多行字符串
  • 熟悉类型转换与智能转换(smart cast)

变量与类型推断

fun main() {
    val name: String = "CodeRoadMap"   // 只读,不可重新赋值
    var count = 0                       // 类型推断为 Int
    count += 1

    val pi = 3.14159                    // Double
    val active = true                   // Boolean

    println("$name has $count lessons")
}

val 类似 Java 的 final;var 类似普通局部变量。顶层 val 是编译期常量。

基本类型

类别KotlinJava 对应
整数Int、Long、Short、Byteint、long 等
浮点Float、Doublefloat、double
字符Charchar
布尔Booleanboolean

Kotlin 基本类型在 JVM 上映射为 Java 原始类型(可空时装箱)。

字符串模板

val slug = "kotlin-essentials"
val title = "Kotlin 语言入门"

// 简单插值
println("Track: $slug")

// 表达式插值
println("Full: ${slug.replace("-", " ")}")

// 多行字符串
val sql = """
    SELECT slug, title
    FROM cf_lesson
    WHERE track_slug = '$slug'
""".trimIndent()

println(sql)

三引号 """ 保留换行,.trimIndent() 去除公共缩进。

类型转换

fun describe(value: Any) {
    when (value) {
        is String -> println("长度: ${value.length}")  // 智能转换为 String
        is Int    -> println("平方: ${value * value}")
        else      -> println("未知类型")
    }
}

fun main() {
    describe("hello")
    describe(42)

    val x: Int = 10
    val y: Long = x.toLong()   // 必须显式转换,无隐式 widening
}

is 检查后编译器自动 smart cast,无需 强转。

(String) value

与 Java 对照

KotlinJava
val x = 1final int x = 1
var s: String?@Nullable String s
"$name"String.format("%s", name)
x.toLong()(long) x
when (x) { is T -> ... }instanceof + cast

练习

  • 用字符串模板打印 track slug 与 lesson 数量
  • 写多行字符串模拟 SQL 查询
  • 用 when + is 判断 Any 类型并打印不同信息

小结

val/var + 类型推断 + 字符串模板是 Kotlin 日常高频特性。 下一课控制流。见 kotlin-essentials。

加载本节练习…
← 上一课Kotlin 是什么下一课 →控制流