kotlin常用关键字大全

fun 函数声明
val / var 变量声明
{} 字符串模板 import 导入任何种类的声明 enum class 枚举 when 分支表达式 … 区间表达式(递增,闭区间) until (递增,开区间) for( a in…) 循环 down To 递减 step设置步长 in !in 判断对象是否在集合或区间中 const val 类似于Java中static final ,适用于所有基本数据类型和String类 vararg 可变参数 “*” 星号,展开运算符,用于数组,可以让数组元素在函数中作为单独的参数来调用 to 中缀调用, infix修饰函数,允许使用中缀符号 interface 定义接口 :继承(实现)、函数返回值类型 override重写修饰符 super.methor() 调用父类方法 open 允许该类被继承(方法被重写),Kotlin中默认的类和方法都是final final 禁止该方法被重写 abstract 抽象 public , private, protected, internal 可见性修饰符,默认public,internal模块内可见 inner 内部类 嵌套类 默认 sealed 密封类 constructor 构造方法 init{} 初始化语句块 super(params…)调用父类的构造方法 this(params…)调用自己类的其他构造方法 field 访问属性的支持字段field
== 检查相等性(类似于Java中的equals方法)
=== 进行引用比较
is 等价于Java中的instanceOf
data class 数据类(自动生成方法的实现类)
by 委托
object 声明对象(单一实例,无构造方法)
companion object 伴生对象(工厂方法,静态成员)
object : 声明匿名内部类
maxBy{} 指定比较哪个值找到最大元素,需要一个参数:一个函数
it 默认参数名称
:: 成员引用(Person::age)
{… -> …} Lambda表达式
run{} 执行代码块
filter 过滤(从集合中找寻满足条件的所有元素)
map 转换(对集合中的每一个元素应用给定的函数并把结果收集到一个新集合)
all 判断集合中的所有元素是否满足某个条件 返回布尔值类型
any 判断集合中是否至少有一个元素满足条件 返回布尔值类型
count 返回集合中满足条件的个数
find 找到集合中第一个满足条件的元素,如果没有返回Null 等价于 firstOrNull
groupBy 根据条件把集合转换成分组的map
flatMap 根据作为实参给定的函数对集合中的每个元素做变换,然后把多个列表合并成一个列表
asSequence() 把任意的集合转换成序列 (惰性操作)
toList 把序列转换成集合
with(params){} with的返回值是lambda中最后一个表达式
apply apply始终会返回作为实参传递给它的对象(返回接收者的对象),返回第一个参数
? 允许变量为null
?. 安全调用
?: Elvis运算符(不为null就是前面的运算数,为null就是后面的运算数)
as? 安全转换
!!. 非空断言
let函数 ?.let{} 把调用Lei函数的可空对象转换成非空类型
lateinit 延迟初始化, 所有延迟初始化都是var类型
Any , Any? 根类型(前者非空,否则可为空)
Unit Kotlin中的void
Nothing 这个函数永不返回
operator 重载符号
a[index] 下标运算符 重载get()方法
in 检查某个对象是否属于集合
rangeTo 创建区间…
by 委托
by lazy{} 延迟初始化
inline 内联函数关键字,作用:销除lambda带来的运行开销
where 指定泛型的多个约束
reified 具体化,使用inline来修饰函数,reified来修饰类型形参,作用:可以在运行时引用实际的类型参数
::class.java 获取java.lang.Class对应的Kotlin类
out 泛型中协变关键字 作用:保留子类型化关系,泛型T只能用在out位置(返回值)相当于Java中的extends
in 逆变,可以看作是协变的镜像 相当于Java中的super
@ 应用注解,lambda中做局部返回

原文链接:https://blog.csdn.net/ChrisSen/java/article/details/89874921

你可能感兴趣的:(kotlin常用关键字大全)