11 2023 档案

摘要:一、泛型函数 如下是泛型函数的一种构造 在fun函数标记的右边增加该函数要使用的类型形参 fun <T> List<T>.slice(indices: IntArray): List<T> { val ret = mutableListOf<T>() for (v in indices) { ret 阅读全文
posted @ 2023-11-16 09:08 LCAC 阅读(95) 评论(0) 推荐(0) 编辑
摘要:一、lambda表达式是否可以使用return 1、非内联函数的lambda表达式中使用return是不被允许 2、内联函数是允许使用return,它会从调用该lambda的函数中返回 fun lookForAlice(people: List<String>) { people.forEach { 阅读全文
posted @ 2023-11-13 07:37 LCAC 阅读(219) 评论(0) 推荐(0) 编辑
摘要:一、当函数被声明为内联函数(函数的前缀增加inline),那么函数体会被直接替换到函数被声明的地方,而不是被正常的调用。如下的代码 inline fun synchronized(lock: Lock, action: () -> Unit) { lock.lock() try { return a 阅读全文
posted @ 2023-11-12 23:18 LCAC 阅读(148) 评论(0) 推荐(0) 编辑
摘要:一、定义:以另一个函数作为参数或者返回值的函数 1、kotlin中,函数以lambda或者函数引用来表示 二、函数类型 1、如下是函数的类型 上述声明了函数的类型,括号内包含了该函数类型需要传入的参数类型,紧接着箭头,最后是返回的类型(在声明函数类型时候,返回类型即使是Unit也不可以省略) 2、函 阅读全文
posted @ 2023-11-11 15:07 LCAC 阅读(12) 评论(0) 推荐(0) 编辑
摘要:一、二元运算符的重载 1、常见的运算符有:加、减、乘、除、求余;我们要重载这些运算符的操作 这里以加法重载运算符为例 data class Point(val x: Int, val y: Int) { operator fun plus(other: Point): Point { return 阅读全文
posted @ 2023-11-05 23:45 LCAC 阅读(261) 评论(0) 推荐(0) 编辑
摘要:一、lambda表达式的格式 这里介绍该表达式的几个用法 data class Person(val name: String, val age: Int) val peoples = listOf(Person("aa", 29), Person("bb", 30)) println(people 阅读全文
posted @ 2023-11-01 00:31 LCAC 阅读(10) 评论(0) 推荐(0) 编辑