当前位置: 首页 > backend >正文

Kotlin基础(①)

open 关键字:打破 Kotlin 的“默认封闭”规则

// 基类必须加 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!

Lambda 表达式:简化匿名函数

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 }

http://www.xdnf.cn/news/922.html

相关文章:

  • 条件变量底层实现原理
  • 2025 年职业院校技能大赛网络建设与运维赛项Docker赛题解析
  • Spark SQL概述(专业解释+生活化比喻)
  • Redis专题
  • NLP高频面试题(四十九)大模型RAG常见面试题解析
  • 基于大模型的血栓性外痔全流程风险预测与治疗管理研究报告
  • 检测IP地址欺诈风险“Scamalytics”
  • M2N2 解读
  • 卷积神经网络--手写数字识别
  • Spark-SQL(四)
  • 微服务架构下数据库范式的失效与反范式设计的崛起
  • 将长循环任务拆分成多个小步骤,以非阻塞的方式执行,在裸机环境下的实现方法
  • 【第16届蓝桥杯C++C组】--- 2025
  • vue2练习项目 家乡特色网站—前端静态网站模板
  • 8. ROS中常见命令
  • Vue中如何优雅地阻止特定标签的移除并恢复其原始位置
  • 代码随想录算法训练营Day32
  • 在线查看【免费】 txt, xml(渲染), md(渲染), java, php, py, js, css 文件格式网站
  • CFIS-YOLO:面向边缘设备的木材缺陷检测轻量级网络解析
  • 从零开始了解数采(十七)——工业数据清洗
  • 【计算机网络】第五章 局域网技术
  • 你学会了些什么220622?--搭建UI自动化
  • 设计模式深度总结:概念、实现与框架中的应用
  • 【Linux】调试工具gdb的认识和使用指令介绍(图文详解)
  • 深入解析 Linux 文件系统中的软硬链接:从原理到实践
  • CF2096F Wonderful Impostors
  • QT:Qt5 串口模块 (QSerialPort) 在 VS2015 中正确关闭串口避免被占用
  • (14)VTK C++开发示例 --- 将点投影到平面上
  • C++ vector 核心功能解析与实现
  • Spring-AOP分析