zl程序教程

Kotlin

  • Kotlin Vocabulary | 操作符重载

    Kotlin Vocabulary | 操作符重载

    当我们在处理可以添加、删除、比较或者连接的类型时,我们通常需要写很多冗长和重复的代码。但在 Kotlin 中,我们可以借助 操作符重载,为这些类型写出更具表现力和简洁的代码。我除了喜欢 Android,还喜欢在合唱团里唱歌,所以就让我们用合唱团的例子来说明操作符重载的好处。假设有一个由歌手组成的合唱团,我们想在合唱团中增加一名歌手,代码如下:<!-- Copyright 2019 Googl

    日期 2023-06-12 10:48:40     
  • 中国电信营业厅: 感受 Kotlin 的 "加速度"

    中国电信营业厅: 感受 Kotlin 的 "加速度"

    "我们手上是一个很成熟的项目,所以毫无疑问需要保留 Java 代码,目前只会在新开发的页面中使用 Kotlin,并已经感受到了它带来的便利。随着功能的迭代,我们相信更多的功能会转而使用 Kotlin。" —— 付迎鑫,电信营业厅技术负责人 中国电信电子渠道运营中心,属于中国电信三大主渠道之一,负责电信线上渠道的管理与运营。电信营业厅 app 则是中国电信线上渠道的主要入口

    日期 2023-06-12 10:48:40     
  • R8 编译器: 为 Kotlin 库和应用 "瘦身"

    R8 编译器: 为 Kotlin 库和应用 "瘦身"

    作者 / Morten Krogh-Jespeersen, Mads AgerR8 是 Android 默认的程序缩减器,它可以通过移除未使用的代码和优化其余代码的方式降低 Android 应用大小,R8 同时也支持缩减 Android 库大小。除了生成更小的库文件,库压缩操作还可以隐藏开发库里的新特性,等到这些特性相对稳定或者可以面向公众的时候再对外开放。Kotlin 对于编写 Android

    日期 2023-06-12 10:48:40     
  • spring boot 过滤器_kotlin从入门到进阶实战

    spring boot 过滤器_kotlin从入门到进阶实战

    大家好,又见面了,我是你们的朋友全栈君。 Spring Boot是很优秀的框架,它的出现简化了新Spring应用的初始搭建以及开发过程,大大减少了代码量,目前已被大多数企业认可和使用。这个专栏将对Spring Boot框架从浅入深,从实战到进阶,不但我们要懂得如何去使用,还要去剖析框架源码,学习其优秀的设计思想。 汇总目录链接:【Spring Boot实战与进阶】学习目录 文章目录

    日期 2023-06-12 10:48:40     
  • Kotlin 学习笔记(二)

    Kotlin 学习笔记(二)

    本文阅读大概需要 7min感悟:不知不觉一年就过了一半··· 年初定的目标完成了一半了吗?eee… 趁着写年中总结,好好反省反省 (笑Cry.jpg)。现在还来得及,童鞋们继续努力鸭!在上篇笔记中,我们对 Kotlin 的基本类型、关键字、类与对象,以及与 Java 之间互调的内容有了一些认识,这篇笔记来看看 Kotlin 中几种特殊的类,以及集合相关的常用操作。1. Kotlin 数据类Kotl

    日期 2023-06-12 10:48:40     
  • Kotlin 学习笔记(三)

    Kotlin 学习笔记(三)

    最近发生太多事,从吴某凡的瓜开始,到杭州市父女俩骑电动车起火,再到郑州暴雨,还有2020年东京奥运会,记者们估计都忙疯了吧。。。还有在线教育 K12 的毁灭性打击,疫情又开始反复,哎~ 这个暑假真的是太多事儿了,这是不是在教育我们,世事难料,要及时行乐?不管咋样,还是得脚踏实地,提升自我,只有这样才有余力去帮助他人。在上一篇中我们见识到了 Kotlin 语言所特有的几种类——数据类、密闭类等,也熟

    日期 2023-06-12 10:48:40     
  • Kotlin 动态代理学习与实践

    Kotlin 动态代理学习与实践

    最近接了个大项目,哈哈哈~ 文章终于出来啦~ 还好没胎死腹中。最近的感悟就是,做好小事,才有机会做大事,承担大项目! 这次的文章本来想写 Kotlin 学习笔记2,结果写着写着发现动态代理这块之前还是没搞明白,所以就学了下 Kotlin 中的代理模式写法,发现东西有点多,遂独自成文,欢迎大家拍砖!1. 引子动态代理主要是用来干什么的?通俗一点,就是你在调用其他类的一些方法时,想加入你自己的一些

    日期 2023-06-12 10:48:40     
  • XTask与Kotlin Coroutine的使用对比

    XTask与Kotlin Coroutine的使用对比

    背景XTask是我基于RxJava的设计思想,并结合实际项目中使用的经验所创造出来的一个开源项目,其目的就是要代替RxJava在Android中的部分使用场景,提升开发的体验和可维护性。前段时间写过一篇《XTask与RxJava的使用对比》文章,本来只是从对比这两者使用的不同,来让大家更直观全面地了解XTask,然而有些杠精们就开始在下面评论或者私信说“用Kotlin的协程它不香嘛”、“和kotl

    日期 2023-06-12 10:48:40     
  • kotlin的Map集合

    kotlin的Map集合

    大家好,又见面了,我是你们的朋友全栈君。 kotlin的Map集合只读Map可变的MapmutableMapOf kotlin的Map分为: 只读Map。 可变的MutableMap(MutableMap、HashMap、LinkedHashMap)。复制只读Map意味着我们创建出来的map是不可变的,即我们只能使用无法改变我们map中的数据,我们只能获取集合中的数据而无法对集合中的数据进行

    日期 2023-06-12 10:48:40     
  • kotlin与java的区别[通俗易懂]

    kotlin与java的区别[通俗易懂]

    大家好,又见面了,我是你们的朋友全栈君。 Kotlin 简介:Kotlin 是一个基于 JVM 的新的编程语言,由 JetBrains 开发。 Kotlin可以编译成Java字节码,也可以编译成JavaScript,方便在没有JVM的设备上运行。 JetBrains,作为目前广受欢迎的Java IDE IntelliJ 的提供商,在 Apache 许可下已经开源其Kotlin 编程语言。K

    日期 2023-06-12 10:48:40     
  • Kotlin:我干爹是 Google !

    Kotlin:我干爹是 Google !

    这是「进击的Coder」的第 721 篇分享来源:OSC 开源社区 (ID:oschina2013)“ 阅读本文大概需要 5 分钟。”5 年前的 2017 Google I/O 大会上,谷歌宣布:官方正式支持将 Kotlin 作为 Android 开发的 First-Class 语言。自此,Kotlin 开发商 JetBrains 和谷歌一直围绕 Kotlin 进行紧密合作,并共同创立了 Kotl

    日期 2023-06-12 10:48:40     
  • 把 "格子衫" 改造得更时尚 | Kotlin &amp; Jetpack 最佳实践技巧

    把 "格子衫" 改造得更时尚 | Kotlin &amp; Jetpack 最佳实践技巧

    Plaid 是格子图案的意思,也是一款在 2015 年开源的 Material Design 样例应用。它通过 API 调用聚合了 Dribbble、Designer News 和 Product Hunt 三个网站的内容数据,并通过丰富的 UI 交互体验呈现给用户。重构 Plaid 的目标不仅是修复内容源 API 接口的失效问题,更重要的是应用最新的 Android Jetpack、Kotli

    日期 2023-06-12 10:48:40     
  • Kotlin 1.4 来了!全新语言特性和更多改进

    Kotlin 1.4 来了!全新语言特性和更多改进

    发布人:开发技术推广工程师 Wojtek Kaliciński来自开发者社区的热情与积极采用推动了 Kotlin 成为 Android 开发的 首选语言 (Kotlin-first)。随着 Kotlin 不断发展,JetBrains(Kotlin 的创建者)、开源社区以及 Google 团队也将持续投入更多的资源和精力。我们很高兴与大家分享 Kotlin 1.4 版本,这将是 Kotlin 发展的

    日期 2023-06-12 10:48:40     
  • kotlin compose 升级的苦涩 | 一地鸡毛

    kotlin compose 升级的苦涩 | 一地鸡毛

    theme: smartblue前言年中的时候一直有开发同学反馈想升级各个基础库的版本,而且我们也有每年一调整的计划,所以前一阵子就顺便一起做了一次升级迭代基础库的操作。这里我就是想吐槽下,安卓开发体系实在是过于臃肿了,明明就是几个官方库升级的操作,没想到竟然会互相影响。真实的让人害怕! Kotlin 1.7.0 正式发布!主要新特性一览 kotlin 升级引出来的一堆问题我们master的ko

    日期 2023-06-12 10:48:40     
  • JVM 上数据处理语言的竞争:Kotlin, Scala 和 SPL

    JVM 上数据处理语言的竞争:Kotlin, Scala 和 SPL

      基于JVM的开源数据处理语言主要有Kotlin、Scala、SPL,下面对三者进行多方面的横向比较,从中找出开发效率最高的数据处理语言。本文的适用场景设定为项目开发中常见的数据处理和业务逻辑,以结构化数据为主,大数据和高性能不作为重点,也不涉及消息流、科学计算等特殊场景。 文章目录基本特征语法数据源结构化数据计算应用结构SPL资料基本特征适应面  Kotlin的设计初衷是开发效率更高的Ja

    日期 2023-06-12 10:48:40     
  • 开源 | 携程机票跨端 Kotlin DSL 数据库框架 SQLlin

    开源 | 携程机票跨端 Kotlin DSL 数据库框架 SQLlin

    作者简介禹昂,携程机票移动端资深工程师,专注于 Kotlin 移动端跨平台领域,Kotlin 中文社区核心成员,图书《Kotlin 编程实践》译者。一、背景2022年9月 Kotlin 1.7.20 发布之后,Kotlin Multiplatform Mobile(简称KMM)进入 Beta 阶段,Kotlin/Native new memory management 也变更为默认启用状态。无论从

    日期 2023-06-12 10:48:40     
  • K2 编译器将在 Kotlin 2.0 中进入稳定状态 | 官方博客

    K2 编译器将在 Kotlin 2.0 中进入稳定状态 | 官方博客

    我们一直在为 Kotlin 编译器(代号 K2)开发新的前端。前端是编译器的一部分,负责解析代码和执行语义分析、数据流分析、调用解析和类型推断。这是开发者与编译器交互最多的部分。编译器也通过它在 IDE 中持续运行、报告所有错误和警告消息,帮助完成自动补全、语义感知检查、意图和重构等任务。新前端已经可供预览 – 我们将继续进行完善和稳定工作,计划在未来 Kotlin 版本中将其设为默认编译器前端。

    日期 2023-06-12 10:48:40     
  • Kotlin(Java)与Golang的椭圆曲线密钥交换算法

    Kotlin(Java)与Golang的椭圆曲线密钥交换算法

    入坑指南 1:kotlin的Byte是有符号,go的是无符号,所以kotlin的ByteArray打印出来有负数,golang没有。因此会造成ByteArray的size有时是33位,有时是32位。(33位是在前面补了一个0,保证数值不会因为符号位产生变化); 入坑指南 2:kotlin和go的encoded publickey算法不同,导致相互无法转换正确。 入坑指南 3:kotlin的标

    日期 2023-06-12 10:48:40     
  • 00. Kotlin 安装和语言的基本组成

    00. Kotlin 安装和语言的基本组成

    为什么要学 Kotlin要想知道为什么 Kotlin 广受欢迎,首先要理解 Java 在现代软件开发领域中所扮演的角色。这两门语言联系得非常紧密,因为很多时候,Kotlin 代码的开发目标就是要在 Java 虚拟机上运行。Java 语言比较稳健,久经考验。多年来,它一直是最常用的一种编程语言,造就了庞大的生产代码库。自从 1995 年 Java 问世以来,对于优秀的编程语言应满足什么条件,人们已通

    日期 2023-06-12 10:48:40     
  • kotlin函数汇总

    kotlin函数汇总

    这篇主要讲讲kotlin里面的各种函数简化函数 所谓的简化函数是假如执行代码提就只是一行代码或者是单行表达式,一行就可以搞得的,就可以进行简化fun myMethod()= print("jack")复制就这样,一句代码的时候就直接用=就可以实现,或者在单行表达式时: fun myMethod2(count:Int)=if(count>2) { var data

    日期 2023-06-12 10:48:40     
  • Kotlin安卓开发学习-标准函数和静态方法

    Kotlin安卓开发学习-标准函数和静态方法

    , 5 11月 2022作者 847954981@qq.com后端学习, 我的编程之路Kotlin安卓开发学习-标准函数和静态方法Kotlin的标准函数指的是Standard.kt文件中定义的函数,任何Kotlin代码都可以自由地调用所有的标准函数。其最主要使用的是with、run和apply这三个函数。with函数会在Lambda表达式中提供第一个参数对象的上下文,并使用Lambda表达式中

    日期 2023-06-12 10:48:40     
  • Kotlin 泛型:类型参数约束

    Kotlin 泛型:类型参数约束

    上一篇文章讲了 Kotlin 泛型:基本使用,接下来我们再进一步了解泛型使用相关的进阶知识。本篇是 Kotlin 泛型类型参数约束的讲解,更多内容可点击链接查看。Kotlin 泛型:基本使用Kotlin 泛型:类型参数约束系列持续更新中,欢迎关注订阅。为什么需要类型参数约束在上一篇文章里,我们使用泛型定义了一个泛型列表List<T>,使用这个列表,我们可以在使用的时候,实例化出各种具体

    日期 2023-06-12 10:48:40     
  • 02. Kotlin 变量、常量和类型

    02. Kotlin 变量、常量和类型

    数据类型数值类型在 Kotlin,一切都是一个对象,你可以调用任何变量的成员函数和属性。有些类型可以有一个特殊的内部表示——例如,数字、字符和布尔值可以在运行时表示为基本值——但对用户来说,它们看起来像普通类。Kotlin 这样设计基于几大理由。首先,只有一种数据类型可选,你就不容易因选项多而选错, 进而陷入编码困境。例如,定义了一个基本数据类型实例后,写着写着,猛然发现要用到只有引 用类型才支持

    日期 2023-06-12 10:48:40     
  • 【Kotlin】Kotlin 面向对象 ( 类 | 成员变量 | 成员方法 | 封装 | 继承 | 多态 )

    【Kotlin】Kotlin 面向对象 ( 类 | 成员变量 | 成员方法 | 封装 | 继承 | 多态 )

    文章目录I . 创建简单类 ( 整型字段 )II . 创建简单类 ( 整型字段 + 字符串字段 )III . 类方法定义IV . 封装V . 继承VI . 多态 与 抽象类I . 创建简单类 ( 整型字段 )定义类 :① 定义类 : 定义类的关键字是 class ;② 定义字段 : 在类后的括号内 , 使用 var 字段名称:字段类型 可以定义一个字段 ;/** * 定义 Rect 类 : 定义

    日期 2023-06-12 10:48:40     
  • 【Kotlin】Kotlin 委托 ( 使用 by 关键字进行接口委托 )

    【Kotlin】Kotlin 委托 ( 使用 by 关键字进行接口委托 )

    文章目录I . 定义 和 实现普通接口II . 使用委托实现接口III . 使用委托实现接口的基础上执行额外操作IV . 测试上述三种接口实现 ( 普通实现 | 委托 | 委托 + 额外操作 )I . 定义 和 实现普通接口1 . 定义普通的接口 : 使用 interface 声明接口 , 接口中的方法没有方法体 , 也不用 abstract 关键字修饰 ;package entrust /**

    日期 2023-06-12 10:48:40     
  • 【Kotlin】Kotlin enum 枚举类 ( 常用用法 | 初始化成员变量 | 实现抽象方法 | 实现接口 | 获取名称和位置索引 | 调用枚举常量方法 )

    【Kotlin】Kotlin enum 枚举类 ( 常用用法 | 初始化成员变量 | 实现抽象方法 | 实现接口 | 获取名称和位置索引 | 调用枚举常量方法 )

    文章目录I . 枚举类常用用法II . 枚举类初始化III. 枚举类匿名类IV . 枚举类实现接口V . 获取枚举常量名称和位置索引VI . 获取枚举常量的成员变量VII . 调用枚举常量的方法VIII . Kotlin 枚举完整代码示例I . 枚举类常用用法枚举最常用的方法 : 定义枚举常量 , 使用逗号隔开 , 每个枚举常量都是一个对象 ;/** * 枚举最常用的方法 * 定义枚

    日期 2023-06-12 10:48:40     
  • 【Kotlin】Kotlin 高阶函数 ( 高阶函数当做参数 | 高阶函数定义 | 高阶函数调用 )

    【Kotlin】Kotlin 高阶函数 ( 高阶函数当做参数 | 高阶函数定义 | 高阶函数调用 )

    文章目录I . Kotlin 高阶函数概念II . Kotlin 高阶函数 作为 参数 示例解析 ( forEach 方法参数解析 )III . 用作函数参数的 函数类型变量 ( 本示例中使用匿名函数 )IV . 函数类型实例使用V . Kotlin 高阶函数 整体代码示例I . Kotlin 高阶函数概念Kotlin 高阶函数 : Kotlin 的高阶函数 , 就是方法的参数 或 返回值 是函数

    日期 2023-06-12 10:48:40     
  • 【Kotlin】Kotlin 领域特定语言 DSL 原理 一 ( DSL 简介 | 函数 / 属性扩展 )

    【Kotlin】Kotlin 领域特定语言 DSL 原理 一 ( DSL 简介 | 函数 / 属性扩展 )

    文章目录I . DSL 简介II . Kotlin 函数扩展III . Kotlin 属性扩展I . DSL 简介1 . DSL ( Domain Specific Language ) 领域特定语言 : 针对某一个特定的领域的语言 , 如 SQL 语言 ;2 . DSL 用途 : DSL 用于某个特定领域 , 主要是该领域的专家使用 , 通过简单的编程 , 可以描述该领域中的事物 , 这个简单的

    日期 2023-06-12 10:48:40     
  • 【Kotlin】Kotlin 构造函数 ( 主构造函数 | 主构造函数声明属性 | init 初始化代码块 | 次构造函数 | 构造函数委托 | 调用构造函数创建实例对象 )

    【Kotlin】Kotlin 构造函数 ( 主构造函数 | 主构造函数声明属性 | init 初始化代码块 | 次构造函数 | 构造函数委托 | 调用构造函数创建实例对象 )

    文章目录I . 主构造函数II . 主构造函数声明属性III . init 初始化代码块IV . 主构造函数参数 和 成员变量访问方式V . 主构造函数 可见性 设置VI . 次构造函数 ( 常用情况 )VII . 次构造函数 ( 没有主构造函数 )VIII . 构造函数 代码执行顺序IX . 调用 主构造函数 / 次构造函数 创建类实例对象I . 主构造函数1 . 构造函数个数 : Kotlin

    日期 2023-06-12 10:48:40     
  • 【Kotlin】抽象类 ( 声明 | 抽象类成员 | 抽象类继承 | 抽象方法覆盖 | 抽象方法实现 )

    【Kotlin】抽象类 ( 声明 | 抽象类成员 | 抽象类继承 | 抽象方法覆盖 | 抽象方法实现 )

    文章目录I . 抽象类总结II . 抽象类声明III . 抽象类中的 ( 正常 / 抽象 ) 的 ( 成员 / 方法 )IV . 抽象类继承V . 抽象方法的覆盖VI . 抽象方法的实现I . 抽象类总结抽象类总结 :① 声明 : 抽象类中使用 abstract 声明 ;② 成员 : 抽象类中既可以定义正常属性和方法 , 又可以定义抽象的属性和方法 ;③ 继承 : 抽象类可以继承抽象类 , 抽象类

    日期 2023-06-12 10:48:40     
  • 【Kotlin】扩展函数 ( 扩展函数声明 | 调用方式 | 与成员函数优先级 | 接收者空值处理 )

    【Kotlin】扩展函数 ( 扩展函数声明 | 调用方式 | 与成员函数优先级 | 接收者空值处理 )

    文章目录I . 扩展函数 总结II . 扩展函数概念简介III . 扩展函数简单示例IV . 扩展函数调用选择方式 : 静态解析V . 扩展函数 调用优先级VI . 扩展函数 接收者 空值处理I . 扩展函数 总结扩展函数总结 :① 扩展函数定义方式 : fun 接收者类型.函数名(参数列表){函数体}② 扩展函数调用方式 : 父类和子类定义了相同函数签名的扩展函数 , 根据变量声明的类型调用对应

    日期 2023-06-12 10:48:40