草庐IT

Kotlin-Flow

全部标签

【译】kotlin 协程官方文档(5)- 异步流

最近一直在了解关于Kotlin协程的知识,那最好的学习资料自然是官方提供的学习文档了,看了看后我就萌生了翻译官方文档的想法。前后花了要接近一个月时间,一共九篇文章,在这里也分享出来,希望对读者有所帮助。个人知识所限,有些翻译得不是太顺畅,也希望读者能提出意见协程官方文档:coroutines-guide挂起函数可以异步返回单个值,但如何返回多个异步计算值呢?这就是kotlinFlows(流)的用处了一、表示多个值可以使用集合在kotlin中表示多个值。例如,有一个函数foo(),它返回包含三个数字的List,然后使用forEach打印它们funfoo():List=listOf(1,2,3)f

Kotlin 集合对象的单条件和多条件排序

原文:Kotlin集合对象的单条件和多条件排序-Stars-One的杂货小窝本文不是太难的东西,因为sortedWith之前没怎么用过,所以就记录下平常开发经常使用到List,Map等数据集合类型,也会经常遇到排序的问题,可以直接使用sortedBy或sortedByDescending排序多条件则是使用sortedWith,具体使用用例看见下文单条件排序方便起见,我们创建一个类Author,用来保存数据dataclassAuthor(valname:String,valage:Int,valheight:Int)valauthorList=listOf(Author("John",30,17

Kotlin协程-那些理不清乱不明的关系

Kotlin的协程自推出以来,受到了越来越多Android开发者的追捧。另一方面由于它庞大的API,也将相当一部分开发者拒之门外。本篇试图从协程的几个重要概念入手,在复杂API中还原出它本来的面目,以全新的角度带读者走进Kotlin协程世界。什么是协程在很多有关协程的文章中,描述协程通常会用这样的一句描述——协程比线程更加轻量,是可取消的。这句话没有错,这两个都是协程的优点,但是并不是特点,它并没有解释协程是什么。那么什么是协程的特点呢,我觉得可以先用线程做个类比,解释一个概念最好的办法就是类比。我不打算使用科学严谨的描述,我想给线程一个我自己的定义——线程是一个可供CPU调度的执行单元,它有

Kotlin 一劳永逸实现 TAG

1TAG经典写法        对于Android开发,当我们需要在类中打印Log时,通常在Java中会这么定义一个TAG:privatestaticfinalStringTAG="TestClass";    或者不具体指定名字:privatestaticfinalStringTAG=TestClass.class.getSimpleName();那么,在Kotlin中        我们通常会这样定义:privatevalTAG=TestClass::class.java.simpleName        或者采用类似于Java的静态方式实现:companionobject{privat

【Kotlin】集合操作总结 ( List 集合 | MutableList 集合 | List 集合遍历 | Set 集合 | MutableSet 集合 | Map 集合 | 可变 Map集合 )

文章目录一、List创建与元素获取二、安全获取集合元素1、getOrElse函数2、getOrNull函数三、List创建与元素获取代码示例四、MutableList可变列表集合五、修改MutableList集合的mutator函数1、添加元素运算符+=和删除元素运算符-=2、通过Lambda表达式筛选要删除的元素六、List集合遍历七、List通过解构一次性给多个元素赋值八、Set集合九、可变Set集合十、List与Set之间相互转换十一、数组类型十二、Map集合十三、获取Map值十四、Map遍历十五、可变Map集合一、List创建与元素获取Kotlin中的集合分为两类,只读集合和可变集合;

2023年月9TIOBE 指数头条:Kotlin 重新进入 TIOBE 指数前 20 名。多家权威机构____编程语言排行榜__薪酬状况

2023年9月多家权威机构____编程语言排行榜__薪酬状况本文目录:一、TIOBE统计数据(2023年9月)(1)2023年9月的编程语言流行度指数排行(2)编程语言多年流行回顾(年度编程语言)二、2023年6月开发者调查统计结果——最流行的技术(2023.6)三、人工智能开发人员工作流程、看法、工具统计数据(2023.6)四、PYPL编程语言流行指数(2023年9月)(1)PYPLIndex(2)10TOPIDE(3)10TOPODE(4)10TOPDB六、DevJobsScanner开发人员就业市场统计数据(2022年6月)5.1Javascript Typescript工作需求占比5.

Kotlin-Coroutines 中的async与await

Coroutines官网说明什么是协程?(摘自官网)Asynchronousornon-blockingprogrammingisanimportantpartofthedevelopmentlandscape.用于异步或非阻塞编程。简单概括:同步的方式去编写异步执行的代码协程依赖于线程协程挂起时不需要阻塞线程,几乎是无代价的.一个线程中可以创建N个协程协程的创建/启动runBlocking启动一个新的协程并阻塞调用它的线程launch:Job启动一个协程但不会阻塞调用线程(CoroutineScope作用域内调用)async:Deferred启动一个协程但不会阻塞调用线程(Coroutine

一文快速入门 Kotlin 协程

在今年的三月份,我因为需要为项目搭建一个新的网络请求框架开始接触Kotlin协程。那时我司项目中同时存在着两种网络请求方式,采用的技术栈各不相同,Java、Kotlin、RxJava、LiveData各种混搭,技术栈的不统一长远来看肯定是会造成很多不便的,所以就打算封装一个新的网络请求框架来作为项目的统一规范(前面的人估计也是这么想的,所以就造成了同个项目中的网络请求方式越来越多??),那么就需要考虑采用什么技术栈来实现了采用Kotlin语言来实现必不可少,都这年头了还用Java也说不过去。Retrofit也必不可少,而目前Retrofit也已经支持Kotlin协程了,Google官方推出的J

如何在 Kotlin 中创建单例类?

Singleton是一个全局对象,可以从应用程序的任何地方访问。本文展示了在Kotlin中创建它的不同方法。在Kotlin中,您可以使用对象声明来实现单例。但是,如果你不知道这个对象关键字,你可能会做这样的事情。常规单例classSingletonprivateconstructor(){companionobject{@Volatileprivatelateinitvarinstance:SingletonfungetInstance():Singleton{synchronized(this){if(!::instance.isInitialized){instance=Singleton

(25)(25.4) PX4FLOW光学流量相机板

文章目录前言25.4.1概述25.4.2在哪里购买25.4.3安装驱动程序(仅限Windows)25.4.4使用MissionPlanner25.4.5使用QGroundControl25.4.6与Pixhawk连接25.4.7安装到机架上25.4.8启用传感器25.4.9测试和设置前言本文介绍如何设置可用于非GPS导航(Non-GPSnavigation)的PX4FLOW(光学流量)传感器。!WarningPlane或Rover尚不支持PX4FLOW。25.4.1概述PX4FLOW(光流)传感器是一个专用的高分辨率向下指向相机模块和一个三轴陀螺仪,可利用地面纹理和可见特征来确定飞机的地面速度