kotlin
文章平均质量分 83
kotlin基础篇
ChinaDragonDreamer
追梦莫空动!
个人公众号:小龙知识库
展开
-
Kotlin:for循环的几种示例
Kotlin:for循环的几种示例0 until 3 不包含3inex in 0 ..2downTolist.indiceslist.withIndex()index in 0 until list.size原创 2024-04-04 22:20:08 · 611 阅读 · 0 评论 -
Kotlin:常用标准库函数(let、run、with、apply、also)
一、let 扩展函数Kotlin标准库函数let可用于范围确定和空检查。当调用对象时,let执行给定的代码块并返回其最后一个表达式的结果。对象可以通过引用(默认情况下)或自定义名称在块中访问二、run 扩展函数与let类似,run是标准库中的另一个作用域函数。基本上,它做同样的事情:执行一个代码块并返回其结果。不同的是,在内部运行对象是通过this访问的。当您想要调用对象的方法而不是将其作为参数传递时,这是很有用的。原创 2024-04-04 22:14:25 · 614 阅读 · 0 评论 -
Kotlin:runBlocking导致App应用出现ANR问题实例
runBlocking 是常规函数;runBlocking 方法会阻塞当前线程来等待;runBlocking 的主线程会一直 阻塞 直到 runBlocking 内部的协程执行完毕。原创 2024-03-15 14:01:27 · 1132 阅读 · 0 评论 -
Kotlin: 协程的四种启动模式(CoroutineStart)
协程的四种启动模式:CoroutineStart.DEFAULTCoroutineStart.LAZYCoroutineStart.ATOMICCoroutineStart.UNDISPATCHED原创 2024-03-14 23:41:56 · 2029 阅读 · 0 评论 -
Kotlin:为什么创建类不能被继承
class或data class 默认情况下,**Kotlin 类是最终(final)的:它们不能被继承。原创 2024-03-14 21:04:22 · 745 阅读 · 0 评论 -
Kotlin:泛型
与 Java 类似,Kotlin 中的类也可以有类型参数。不仅类可以有类型参数。函数也可以有。类型参数要放在函数名称之前。原创 2024-03-13 17:00:00 · 785 阅读 · 0 评论 -
Kotlin:内联类(inline class)
内联类必须含有唯一的一个属性在主构造函数中初始化。在运行时,将使用这个唯一属性来表示内联类的实例原创 2024-03-13 06:00:00 · 866 阅读 · 0 评论 -
Kotlin:枚举类
enum class,每个枚举常量都是一个对象。枚举常量用逗号分隔。原创 2024-03-12 06:30:00 · 351 阅读 · 0 评论 -
Kotlin:密封类(sealed class)
密封类用来表示受限的类继承结构:当一个值为有限几种的类型、而不能有任何其他类型时。在某种意义上,他们是枚举类的扩展:枚举类型的值集合也是受限的,但每个枚举常量只存在一个实例,而密封类的一个子类可以有可包含状态的多个实例。原创 2024-03-12 06:00:00 · 906 阅读 · 0 评论 -
Kotlin:数据类(data class)
为了确保生成的代码的一致性以及有意义的行为,数据类必须满足以下要求:1. 主构造函数需要至少有一个参数;2. 主构造函数的所有参数需要标记为 val 或 var;3. 数据类不能是抽象、开放、密封或者内部的;4.(在1.1之前)数据类只能实现接口。原创 2024-03-11 10:28:53 · 934 阅读 · 0 评论 -
Kotlin:类、构造函数、继承
类声明由类名、类头(指定其类型参数、主构造函数等)以及由花括号包围的类体构成。类头与类体都是可选的; 如果一个类没有类体,可以省略花括号。 在 Kotlin 中的一个类可以有一个主构造函数以及一个或多个次构造函数。主构造函数是类头的一部分:它跟在类名(与可选的类型参数)后。原创 2024-03-11 09:54:07 · 1082 阅读 · 0 评论 -
Kotlin:协程上下文与调度器
协程上下文包含一个 协程调度器 (CoroutineDispatcher)它确定了相关的协程在哪个线程或哪些线程上执行。协程调度器可以将协程限制在一个特定的线程执行,或将它分派到一个线程池,亦或是让它不受限地运行。所有的协程构建器诸如 launch 和 async 接收一个可选的 CoroutineContext 参数,它可以被用来显式的为一个新协程或其它上下文元素指定一个调度器。原创 2024-02-28 22:56:53 · 1325 阅读 · 1 评论 -
Kotlin:组合挂起函数
组合挂起函数,默认顺序调用;使用 async 的结构化并发;在概念上,async 就类似于 launch。它启动了一个单独的协程,这是一个轻量级的线程并与其它所有的协程一起并发的工作。不同之处在于 launch 返回一个 Job 并且不附带任何结果值,而 async 返回一个 Deferred 可以使用 .await() 在一个延期的值上得到它的最终结果原创 2024-02-26 21:12:32 · 1303 阅读 · 0 评论 -
Kotlin:协程基础
GlobalScope.launch: 在后台启动一个新的协程并继续runBlocking:方法会阻塞当前线程来等待coroutineScope:只是挂起,会释放底层线程用于其他用途delay 是一个特殊的 挂起函数 ,它不会造成线程阻塞,但是会 挂起 协程,并且只能在协程中使用。原创 2024-02-26 10:08:55 · 1434 阅读 · 0 评论 -
Kotlin:使用flow实现倒计时功能
Kotlin:使用flow实现倒计时功能原创 2024-02-18 10:31:35 · 624 阅读 · 0 评论 -
Kotlin:单例模式(项目使用实例)
kotlin单例模式的使用实例、by lazy使用实例原创 2024-02-12 22:46:05 · 940 阅读 · 0 评论 -
解决 kotlin关键字:lateinit 延迟初始化属性抛出异常问题
检查lateinit变量是否已经初始化,在该属性的引用上使用.isInitialized原创 2022-10-16 22:11:47 · 3043 阅读 · 0 评论 -
基础语法(Basic syntax)
kotlin基本语法原创 2022-01-26 10:48:57 · 1962 阅读 · 0 评论 -
在 Android 开发中使用常见的 Kotlin 模式
使用 Fragment下文使用 Fragment 示例突出介绍 Kotlin 的一些最佳功能。继承您可以使用 class 关键字在 Kotlin 中声明类。在以下示例中,LoginFragment 是 Fragment 的子类。您可以通过在子类与其父类之间使用 : 运算符指示继承:class LoginFragment : Fragment()在此类声明中,LoginFragment 负责调用其超类 Fragment 的构造函数。在 LoginFragment 中,您可以替换许多生命周期回.原创 2020-11-26 16:31:59 · 213 阅读 · 1 评论 -
学习 Kotlin 语言:30 分钟的速成课程
学习 Kotlin 编程语言Kotlin 是世界各地的 Android 开发者广泛使用的一种编程语言。本主题可用作 Kotlin 速成课程,帮助您快速上手。变量声明Kotlin 使用两个不同的关键字(即 val 和 var)来声明变量。val 用于值从不更改的变量。使用 val 声明的变量无法重新赋值。var 用于值可以更改的变量。在以下示例中,count 是一个 Int 类型的变量,初始赋值为 10:var count: Int = 10Int 是一种表示整数的类型,是可以用 K.原创 2020-11-26 14:57:07 · 625 阅读 · 1 评论