Kotlin
文章平均质量分 64
Kotlin学习笔记、进阶、开发
Cupster
深山磨柴斧,一鸣震江湖。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Kotlin Coroutine(二):作用域及取消
一、协程作用域定义协程必须指定其 CoroutineScope 。CoroutineScope 可以对协程进行追踪,即使协程被挂起也是如此。同调度程序 (Dispatcher) 不同,CoroutineScope 并不运行协程,它只是确保您不会失去对协程的追踪。为了确保所有的协程都会被追踪,Kotlin 不允许在没有使用 CoroutineScope 的情况下启动新的协程。CoroutineScope 可被看作是一个具有超能力的 ExecutorService 的轻量级版本。CoroutineScope原创 2021-05-30 23:58:52 · 2984 阅读 · 3 评论 -
Kotlin Coroutine(一):基础及深入
一、接入 //Kotlin implementation "org.jetbrains.kotlin:kotlin-stdlib:1.4.32" //核心库 implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:1.4.3" //Android支持库 implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.3原创 2021-05-30 23:57:48 · 792 阅读 · 0 评论 -
Java过渡Kotlin09:对象表达式&对象声明
object关键字Kotlin 使用 object 关键字来声明一个对象单例object DataProviderManager { fun registerDataProvider(provider: DataProvider) { // …… } val allDataProviders: Collection<DataProvider> get() = // ……}实例object Site { var url原创 2021-04-14 17:38:45 · 462 阅读 · 0 评论 -
Java过渡Kotlin08:泛型和枚举
Kotlin泛型1.类声明class Box<T>(t: T) { var value = t}创建val box: Box<Int> = Box<Int>(1)// 或者val box = Box(1) // 编译器会进行类型推断,1 类型 Int,所以编译器知道我们说的是 Box<Int>。exampleclass Box<T>(t : T) { var value = t}fun main(arg原创 2021-04-14 17:37:42 · 711 阅读 · 0 评论 -
Java过渡Kotlin07:数据类&密封类
#数据类Kotlin 可以创建一个只包含数据的类,关键字为 data:data class User(val name: String, val age: Int)如果这些函数在类中已经被明确定义了,或者从超类中继承而来,就不再会生成。为了保证生成代码的一致性以及有意义,数据类需要满足以下条件:主构造函数至少包含一个参数。所有的主构造函数的参数必须标识为val 或者 var ;数据类不可以声明为 abstract, open, sealed 或者 inner;数据类不能继承其他类 (原创 2021-04-14 17:36:50 · 828 阅读 · 0 评论 -
Java过渡Kotlin06:扩展
1.是什么Kotlin 可以对一个类的属性和方法进行扩展,且不需要继承或使用 Decorator 模式。扩展是一种静态行为,对被扩展的类代码本身不会造成任何影响。上代码:class User(var name:String)/**扩展函数**/fun User.Print(){ print("用户名 $name")}fun main(arg:Array<String>){ var user = User("Runoob") user.Print()}原创 2021-04-14 17:33:49 · 1277 阅读 · 0 评论 -
Java过渡Kotlin05:继承和接口
1. 继承kotlin中所有类继承Any默认提供:equals()hashCode()toString()注意:Any 不是 java.lang.Object。kotlin类默认不能被继承,如果一个类要被继承,可以使用open关键字进行修饰。open class BaseActivity(p:Int) //定义积累class MainActivity(String[] args ,p:Int) : BaseActivity(p)2.构造函数如果子类有主构造函数, 则基类必须在原创 2021-04-14 17:32:37 · 1082 阅读 · 0 评论 -
Java过渡Kotlin04:类和对象
1.定义Kotlin 中使用关键字 class 声明类,后面紧跟类名:class Runoob { // 类名为 Runoob // 大括号内是类体构成}空类class Empty成员函数class Runoob() {fun foo() { print(“Foo”) } // 成员函数}2.类的属性var 声明 可变变量val 声明 常量、不可变、尽可赋值一次class Runoob { var name: String = …… var url:原创 2021-04-14 17:30:46 · 1107 阅读 · 0 评论 -
Java过渡Kotlin03:流程控制
title: Kotlin03:流程控制date: 2020-03-01 20:00:01categories:Kotlintags:Kotlin1.IF表达式// 传统用法var max = a if (a < b) max = b// 使用 else var max: Intif (a > b) { max = a} else { max = b} // 作为表达式val max = if (a > b) a else b.原创 2021-04-14 17:29:44 · 1171 阅读 · 0 评论 -
Java过渡Kotlin02:数据类型
一、基本数据类型与Java基本一致不同的是,字符不属于数值类型,是一个独立的数据类型类型位宽度Double64Float32Long64Int32Short16Byte8二、字面常量未提及的均与Java一致长整形Long,以大写L结尾: 123456789LFloat使用F / f 结尾:123.50f 123.50F2进制以0b开头: 0b00001011不支持8进制可以使用下划线增加数字的可读性val oneM原创 2021-04-14 17:26:59 · 1885 阅读 · 0 评论 -
Java过渡Kotlin01:基础语法
title: Kotlin01:基础语法date: 2020-03-01 12:00:01categories:Kotlintags:Kotlin一、基础语法句末 不需要分号;1.包声明与Java一致2.导包与Java一致3.有多个包默认会导入kotlin.*kotlin.annotation.*kotlin.collections.*kotlin.comparisons.*kotlin.io.*kotlin.ranges.*kotlin.sequences.原创 2021-04-14 17:25:32 · 1310 阅读 · 0 评论
分享