
一、for循环until——左开右闭fun main(){ for(i in 0..9){ print($i ) } for(i in 0 until 10){ print($i ) } }二、List在 Kotlin 中ArrayList、listOf、arrayListOf和mutableListOf是常用的集合创建方式但它们在类型、可变性和使用场景上有明显区别。以下是核心对比1.ArrayListT()本质直接创建 Java 的ArrayList类实例。特点需显式指定类型除非通过初始化值推断。val list ArrayListString() // 创建空的可变列表 list.add(apple) list.add(banana)2.listOf()本质创建不可变的只读列表实现List接口。特点由 Kotlin 标准库提供优化了空列表和单元素列表的内存占用。调用add()、remove()等修改方法会抛出UnsupportedOperationException。val immutableList listOf(a, b, c) // 不可变列表 // immutableList.add(d) // 编译错误List 接口无 add() 方法3.arrayListOf()本质创建可变的ArrayList实例是ArrayList()的快捷方式。特点无需显式指定泛型类型通过初始化值推断。完全等价于ArrayListT().apply { addAll(...) }val mutableList arrayListOf(apple, banana) // 可变列表 mutableList.add(cherry) // 合法4.mutableListOf()本质创建实现MutableList接口的可变列表默认是ArrayList。特点类型声明为MutableList更抽象允许未来更换实现如切换为LinkedList。初始化语法更简洁支持默认参数。val是不可变定义但是mutableListOf是可以修改的——原因val 限制的是引用不能重新指向而不是对象一定不可变。val mutableList: MutableListString mutableListOf(a, b) // 可变列表 mutableList.add(c) // 合法