open
// 基类必须加 open 才能被继承 open class Animal { // 方法也要加 open 才能被子类重写 open fun makeSound() { println("Some sound") } } class Dog : Animal() { override fun makeSound() { println("Woof!") } } // 使用 val dog = Dog() dog.makeSound() // 输出: Woof!
val numbers = listOf(1, 2, 3) // ✅ 正确:单数参数名(代表每个元素) numbers.filter { number -> number > 1 } // ❌ 错误:复数参数名(容易误解为整个集合) numbers.filter { numbers -> numbers > 1 } // 编译错误!因为 `numbers` 是单个元素,不能和数字比较
data class Student(val name: String, val score: Int) val students = listOf( Student("小明", 90), Student("小红", 80) ) // ✅ 正确:单数参数名,代表每个学生对象 students.filter { student -> student.score > 85 } // ✅ 也可以用 `it` 简写 students.filter { it.score > 85 }