声明变量:val 和 var
Kotlin 声明变量只有两个关键字:
val name = "Null猫" // 不可变(常量),赋值后不能再改
var age = 1 // 可变,可以随时修改记住一个原则:能用 val 就用 val。 不可变 = 更安全、更不容易出 bug。
val name = "Null猫"
name = "改不了" // ❌ 编译报错!val 不能重新赋值
var age = 1
age = 2 // ✅ var 可以重新赋值类型声明
Kotlin 有类型推断,大多数时候不需要你手动写类型:
val name = "Null猫" // 编译器自动推断为 String
val age = 1 // 自动推断为 Int
val price = 9.9 // 自动推断为 Double
val isVip = true // 自动推断为 Boolean如果你想显式声明类型,写在变量名后面:
val name: String = "Null猫"
val age: Int = 1
val score: Double = 99.5
val isOnline: Boolean = true基本数据类型
字符串模板
这是 Kotlin 最爽的功能之一——直接在字符串里嵌入变量:
val name = "Null猫"
val age = 1
// $ 直接引用变量
println("我是name,今年age岁")
// 输出:我是Null猫,今年1岁
// ${} 可以嵌入表达式
println("明年我就${age + 1}岁了")
// 输出:明年我就2岁了对比 Java 的 "我是" + name + ",今年" + age + "岁",是不是清爽很多?
字符串原始形式
用 """ 三引号可以写多行字符串,不用转义:
val html = """
<div>
<h1>Hello</h1>
<p>这是一段 HTML</p>
</div>
""".trimIndent()
println(html)trimIndent() 会自动去掉公共缩进,输出干净的文本。
类型转换
Kotlin 不会自动转换类型,必须显式转:
val num: Int = 42
val str: String = num.toString() // Int → String: "42"
val back: Int = str.toInt() // String → Int: 42
val d: Double = num.toDouble() // Int → Double: 42.0
val f: Float = num.toFloat() // Int → Float: 42.0f如果转换可能失败(比如字符串不是数字),用安全版本:
val result = "abc".toIntOrNull() // 返回 null,不会崩溃
val number = "123".toIntOrNull() // 返回 123
评论交流
欢迎留下你的想法