
Kotlin
文章平均质量分 76
kotlin
周周都刷火焰猫头鹰
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Kotlin学习:1.7.语言基础之空安全
【代码】Kotlin学习:1.7.语言基础之空安全。原创 2024-12-04 16:59:31 · 426 阅读 · 0 评论 -
Kotlin学习:5.2、异步数据流 Flow
sample操作符与debounce操作符有点像,但是却限制了一个周期性时间,sample操作符获取的是一个周期内的最新的数据,可以理解为debounce操作符增加了周期的限制。当文件下载时,对应的后台下载进度,就可以通过Flow里面的emit发送数据,通过collect接收对应的数据。元素会变换完,以流的形式继续下发,并且某个元素需要耗时,它后面的元素不会等待。元素会变换完,以流的形式继续下发,并且某个元素需要耗时,它后面的元素会等待。conflate(),合并发射项,处理最新的值,不对每个值进行处理;原创 2023-02-28 22:18:08 · 3425 阅读 · 13 评论 -
Kotlin学习:5.1.协程是什么?
协程就是对线程的封装,片面理解为上层框架原创 2022-09-05 17:05:22 · 1291 阅读 · 0 评论 -
Kotlin学习笔记:4.5、扩展函数、扩展属性、伴生对象
扩展函数和扩展属性扩展函数扩展函数和扩展属性是Kotlin的新特性,对标Java的话,就是方法二次封装。扩展函数原创 2021-12-13 22:55:03 · 2219 阅读 · 0 评论 -
Kotlin学习笔记:4.4、内置函数
在 Kotlin 中,内置函数(Built-in Functions)是指已经定义好并包含在 Kotlin 标准库中的函数。这些函数可以直接使用,而不需要进行任何额外的导入或配置。这些内置函数涵盖了广泛的主题,包括字符串操作、集合处理、文件操作等等。内置函数包括两种类型:扩展函数和普通函数。扩展函数是指针对某个类型的函数,可以像该类型的成员函数一样调用。普通函数是指不属于任何类型的函数,可以直接通过包名访问。原创 2023-03-20 15:03:32 · 1120 阅读 · 1 评论 -
Kotlin学习:4.3.高阶函数、匿名函数、Lambda
高阶函数高阶函数高阶函数如果一个函数接收另一个函数作为参数,或者返回值的类型是另一个函数,那么该函数就称为高阶函数原创 2022-03-03 22:07:32 · 2009 阅读 · 0 评论 -
Kotlin学习:4.2、函数简介
中缀函数(Infix function)是指常见的中缀表达式,例如常见的加法和减法运算符。3 + 4中缀函数的优点是可以使代码更易于阅读和理解,因为它们可以像自然语言一样描述操作。然而,它们也可能导致代码的可读性下降,因此应该谨慎使用。原创 2022-03-01 20:41:06 · 2390 阅读 · 0 评论 -
Kotlin学习:3.7、数据类
在Kotlin中,数据类(data class)是一种用于存储数据的特殊类型。数据类自动生成许多通用的方法,如equals()、hashCode()、toString()、copy(),可以减少编写样板代码的工作量。在这个例子中,我们定义了一个数据类Person,包含了name和age两个属性。由于在类声明前添加了"data"关键字,Kotlin会自动为我们生成equals()、hashCode()、toString()和copy()方法,让我们可以轻松地使用这些方法来比较、打印、复制和更改数据类的实例。原创 2023-04-23 14:46:28 · 778 阅读 · 0 评论 -
Kotlin学习:3.6.类的分类
类的实例原创 2022-02-09 15:40:19 · 1402 阅读 · 0 评论 -
Kotlin学习:3.5.接口
接口接口覆盖规则接口[修饰符] interface 接口名 : 父接口1,父接口2...{ 0~N个属性定义... 0~N个方法定义... 0~N个嵌套类、嵌套接口、嵌套枚举定义...}对比Java,Kt 实现使用 :号例:interface InfA { var age: Int val name : String get() = "" fun print() fun logContent(){原创 2022-02-09 09:49:28 · 1562 阅读 · 0 评论 -
Kotlin学习:3.4.类的继承
继承继承方法重写属性重写调用超类规则覆写继承Java中的类默认都是开放的,如果想类不开放,需要设置 final;Kotlin中的类默认都是final的,如果想开放需要设置open。类、方法、属性都需要单独设置open,子类才可以覆写open class 类名{ ... open var/val 属性名 = 属性值 ... open fun 函数名() ... }方法重写属性重写调用超类规则覆写...原创 2022-02-08 16:54:08 · 1195 阅读 · 0 评论 -
Kotlin学习:3.3.类的构造方法和实例
类的构造方法简介主构造函数初始化代码块次构造函数无参构造函数简介在Kotlin中,允许有一个主构造函数和多个二级构造函数(次构造函数)。其中主构造函数是类头的一部分,关键字或者构造函数名:constructor(参数)主构造函数也就是说,当你创建一个类的时候,其实已经创建了它的构造函数,只是它是无参的如下,它省略了 constructor 关键字class Student { }其实应该写成:class Student public constructor() {}//或原创 2022-01-06 00:15:09 · 2039 阅读 · 0 评论 -
Kotlin学习:3.2.类的声明和组成
类的声明声明一般场景下创建一个类完整的格式修饰符访问权限控制修饰符(accessModifier)声明一般场景下创建一个类使用AS创建一个Class,Studentclass Student {}这是一般情况下的类声明,Student 是类名。一般格式:可以知道 Kotlin 中使用关键字 class 声明类,后面紧跟类名。完整的格式 class 类名 [可见性修饰符] [注解] [constructor] (Params){ ... } {}中的 的内容成为类原创 2022-01-05 21:21:25 · 1036 阅读 · 0 评论 -
Kotlin学习:2.3.集合之映射(Map)
映射映射使用映射和Java一样,都是键值对存储。使用初始化 val map = mapOf<String, String>("key0" to "value") val map2 = mapOf("key" to "value") val mutableMap = mutableMapOf<String, String>() val hashMap = hashMapOf<String,原创 2021-11-22 22:34:46 · 2302 阅读 · 0 评论 -
Kotlin学习:2.2.集合之集(Set)
集集是什么?使用集是什么?集(Set)是一种简单的集合。特点:集内部的数据是无特定排列顺序的,仅仅是保存在此集内部不能有重复数据使用创建方法 val emptySet = emptySet<String>() val set = setOf<String>("12", "12", "123") val mutable = mutableListOf<String>("123", "234") m原创 2021-11-22 21:55:28 · 2109 阅读 · 0 评论 -
Kotlin学习:2.1.集合之列表
列表MutableList列表的初始化列表的方法添加元素个数删除可以判空在学些基础数据类型 Array的时候,我就很奇怪为什么不能增和删,后来发现,原来是单独抽出来了一个类 MutableList 。MutableList 就和Java中的List 差不多。MutableList列表的初始化第一种,mutableListOf val list: MutableList<Int> = mutableListOf<Int>() val list2原创 2021-11-18 22:49:06 · 2224 阅读 · 1 评论 -
Kotlin学习:1.6.语言基础之泛型
泛型参考地址泛型参考地址Kotlin 的泛型:https://rengwuxian.com/kotlin-generics/泛型泛型是什么用途?原创 2022-01-04 21:13:44 · 440 阅读 · 0 评论 -
Kotlin学习:1.4.语言基础之语法与标识符
语法与标识符修饰符关键字(保留字)操作符操作符和特殊符号操作符优先级参考地址修饰符在Kotlin源码项目中的kotlin/grammar/src/modefiers.grm文件中看,描述了Kotlin语言的修饰符。访问权限控制修饰符(accessModifier)访问权限修饰符类成员顶层声明public所有地方可见所有地方可见internal模块中可见模块中可见protected子类中可见private类中可见文件中可见类修饰符(clas原创 2021-11-15 17:04:08 · 283 阅读 · 0 评论 -
Kotlin学习:1.3.语言基础之流程控制语句
流程控制语句分支语句ifwhen循环语句forwhile跳转语句breakcontinuereturnlabel基础改变功能throw参考地址流程控制语句有三类,分为分支语句、循环语句还有跳转语句。分支语句if对比JAVA,Kt内的if有返回值三元表达式:var obj2 = if (a > b) 1 else 3作为代码块: var obj2 = if (a > b) { println("""${name.length}""")原创 2021-11-15 16:45:17 · 743 阅读 · 0 评论 -
Kotlin学习:1.2.语言基础之基本数据类型
字符串与模板表达式1.转义字符2.字符串插入代码1.转义字符转义字符不沿用java的写法,而是通过 “”“ ”“”六个引号,引用。例: val shenglue = """ fun getLength(obj: Any) { if (obj is String) { Log.i(TAG,obj) } // Log.i(TAG,原创 2021-11-15 16:10:37 · 770 阅读 · 0 评论 -
Kotlin学习:1.1.语言基础之变量类型
变量类型1.变量和常量2.Any 父类3. is 类型检测1.变量和常量语法:val | var 变量名 [: 变量类型] [= 值]val | var 变量名 [: 变量类型] 此处变量会根据类型设置默认值val | var 变量名 [= 值] 此处省略了类型例: val name: String = "yoshin" var age: Int = 12 var compary: String = "国有企业" var compary3: Int原创 2021-11-15 16:06:17 · 1712 阅读 · 0 评论 -
Kotlin学习:Kotlin和Java互转
Kotlin和Java互转Java 转 Kotlin选择文件(夹)右键转换Code下的转换选项异常转换+运行Kotlin 转 Java以AS4.2为例Java 转 Kotlin选择文件(夹)右键转换Code下的转换选项异常点击转换后,编译会有异常 1:only buildscript {} and other plugins {} script blocks are allowed before pl修改:buildscript { repositories {原创 2021-11-15 21:20:07 · 2980 阅读 · 0 评论