2021-05-10 23:34:27
Kotlin 基础涵盖语言核心特性,包括内置类型、运算符、控制流语句、循环结构、空安全机制等。 以下是关键知识点的总结:
一、内置类型Kotlin 的基本数据类型包括整型(Int、Long、Short、Byte)、浮点型(Float、Double)、字符型(Char)、布尔型(Boolean)和字符串(String)。这些类型均为对象,支持方法调用和运算符重载。
二、运算符>、<、>=、<=:数值比较
==、!=:结构相等性比较(需重写 equals() 方法)
===、!==:引用相等性比较(判断对象是否为同一实例)
+、-、*、/、%:加减乘除取余
++、--:自增自减(前缀形式先运算后返回,后缀形式先返回后运算)

+=、-=、*=、/=、%=:例如 a += 1 等价于 a = a + 1
&&:逻辑与(短路求值)
||:逻辑或(短路求值)
!:逻辑非

三元运算符替代方案:Kotlin 无传统三元运算符,使用 if-else 表达式实现:
val max = if (a > b) a else bwhen 语句:类似 switch-case,支持多条件匹配、范围判断和布尔表达式:
when (monthIndex) { 1 -> monthName = "冬季" 3, 4, 5 -> monthName = "春季" else -> monthName = "夏季"}// 无参数形式(基于布尔条件)when { a.length > b.length -> { /* 执行代码 */ } else -> { /* 执行代码 */ }}while 循环先判断条件,条件为真时执行循环体:
while (number > 0) { println(number) number--}do...while 循环先执行一次循环体,再判断条件:
do { println(number) number--} while (number > 7)for 循环
区间遍历:使用 .. 或 rangeTo 定义闭区间,until 定义半开区间:
for (i in 0..3) println("i = $i") // 0,1,2,3for (i in 0 until 3) println("i = $i") // 0,1,2逆向遍历:使用 downTo:
for (i in 3 downTo 0) println("i = $i") // 3,2,1,0指定步长:使用 step:
for (i in 0..4 step 2) println("i = $i") // 0,2,4forEach 循环遍历数组或集合,支持索引访问:
val mIntArray = intArrayOf(1, 2, 3, 4, 5)mIntArray.forEach { println("it=$it") } // 遍历元素mIntArray.forEachIndexed { index, it -> println("index=$index, it=$it") } // 遍历索引和元素break终止当前循环,支持标签跳转(跳出外层循环):
loop1@ for (i in 0..9) { for (j in 0..i) { if (i > 4) break@loop1 // 跳出外层循环 print("*") } println()}continue跳过本次循环剩余代码,支持标签跳转(跳过外层循环的本次迭代):
for (i in 1 until 101) { if (i % 2 == 0) continue // 跳过偶数 sum += i}使用 const val 声明编译时常量(需在 companion object 或顶层作用域中):
companion object { const val ShortVideoItemList = "short_video_item_list"}七、空安全机制安全调用运算符 ?.若对象为 null,则跳过后续调用并返回 null:
val length = str?.length // 若 str 为 null,length 为 null非空断言运算符 !!.若对象为 null,抛出 NullPointerException:
val length = str!!.length // 强制要求 str 非空Kotlin 集合框架包含 Collection、List、Set、Map 等接口,支持不可变与可变集合:

通过掌握以上基础内容,可高效开发 Kotlin 应用程序,并利用其类型安全、空安全等特性减少运行时错误。