Kotlin基础

数据类型

定义变量

var表示定义变量,可以自动推导变量类型,所以Int可以不用写。

定义常量

条件语句

if表达式可以返回值,该值一般写在if里的最后一行

类似switch的用法

区间

循环

@a是标签,可以直接break到标签的位置,类似goto

函数

冒号后面填的是返回类型

可以把函数看作成一个表达式,可以进行赋值

加上infix关键字,可以通过类型加.的方式定义函数,同时在调用的时候也需要该类型的值加.进行调用。

甚至可以这么写,调用的时候可以省略.和括号

也可以设置缺省参数

可以设置lambda表达式为参数

可以指定具体的参数接收

参数传递时加*可以解决多参传递

类与对象

set方法可以缺省,一般在外界想要修改类成员时会自动调用。其中field是系统生成的变量,用来表示当前成员变量的值。当需要输出或者获取到类成员的值时,就会自动调用get方法。

init函数类似构造函数,进行初始化。

继承

父类要加open关键字,构造函数相关参考:

Kotlin 主构造函数与次构造函数的理解_kotlin主构造函数和次构造函数顺序-CSDN博客

super关键字参考:Java中super关键字及super()的使用_java super-CSDN博客

重写父类的函数需要在父类的函数前加open,并且重写的函数需要加override

相关推荐
JohnnyDeng9413 小时前
【Android】Room 数据库高级用法与性能调优:从查询瓶颈到毫秒级响应
android·性能优化·kotlin·room
Refrain_zc15 小时前
Android 英语口语评测:从录音采集到单词级着色反馈的完整技术方案
kotlin
plainGeekDev18 小时前
文件读写(Java IO)→ Kotlin 扩展函数
android·java·kotlin
消失的旧时光-19431 天前
Kotlin 协程设计思想(九):Flow 到底是什么?为什么 suspend 函数还需要 Flow?
android·kotlin·协程·协程异常
消失的旧时光-19431 天前
Kotlin 协程设计思想(八):suspend 到底是什么?为什么 suspend 不是开启协程?
android·kotlin·suspend·continuation
plainGeekDev1 天前
SharedPreferences → DataStore
android·java·kotlin
plainGeekDev1 天前
Cursor 操作 → Room DAO
android·java·kotlin
朝星1 天前
Android开发[10]:性能优化之内存
android·kotlin
brycegao3211 天前
Android MVI进阶:纯原生实现Slot化可插拔架构
android·kotlin·架构设计·mvi·viewmodel