
kotlin
文章平均质量分 82
非也缘也
微信公众号:非也缘也
展开
-
Kotlin 扩展课堂
Kotlin 中的小魔术字符串内嵌表达式fun main(){ // Kotlin 中字符串内嵌表达式的语法规则: // "hello, ${obj.name}, nice to meet you! " // 当表达式仅有一个变量时,可将大括号省略。 // "hello, $name, nice to meet you! " val brand = "Samsung" val price = "1299.99" println("Cellphone(brand原创 2021-01-20 13:08:47 · 127 阅读 · 0 评论 -
Kotlin 与 Java 代码之间的转换
Java 代码转换成 Kotlin 代码有许多老项目是使用 Java 语言编写的,而现在想要转换成 Kotlin 语言,最笨的转换方式就是对每一行代码都重新手动编写。第一种转换方式事实上,将 Java 代码转换成 Kotlin 代码,在语法层面上是有一定规律的,而 Android Studio 给我们提供了非常便利的功能来一键完成这种转换工作。首先,只要复制一段 Java 代码,然后在 Android Studio 中的任意一个 Kotlin 文件中进行粘贴,Android Studio 都会弹出提原创 2021-01-20 13:08:15 · 2638 阅读 · 2 评论 -
Kotlin 使用 DSL 构建专有的语法结构
DSL 的全称是领域特定语言(Domain Specific Language),它是编程语言赋予开发者的一种特殊能力,通过它我们可以编写出一些看似脱离其原始语法结构的代码,从而构建出一种专有的语法结构。在 Kotlin 中,实现 DSL 的方式并不固定。这里主要的学习目标是通过高阶函数的方式来实现 DSL,这也是 Kotlin 中实现 DSL 中最常见的方式。在 Android 中,Gradle 是一种基于 Groovy 语言的构建工具,因此,当我们在 build.gradle 中添加依赖库时所编写的原创 2021-01-20 13:07:51 · 191 阅读 · 0 评论 -
Kotlin 泛型
泛型和委托泛型的基本用法Java 早在 1.5 版本中就引入了泛型的机制,因此,Kotlin 自然也就支持了泛型功能。但是 Kotlin 中的泛型与 Java 中的泛型有同有异,这里先看与 Java 中相同的部分。泛型,是指在一般的编程模式下,我们需要给任何一个变量指定一个具体的类型,而泛型允许我们在不指定具体类型的情况下进行编程,这样编写出来的代码将会拥有更好的扩展性。比如 List 就是使用泛型来实现的。泛型主要有两种定义方式,一种是定义泛型类,另一种是定义泛型方法,使用的语法结构都是<T原创 2021-01-20 13:07:25 · 1208 阅读 · 0 评论 -
Kotlin 协程
协程,可以将它简单地理解成一种轻量级的线程。要知道,之前所学习的线程是非常重量级的,需要依靠操作系统的调度才能实现不同线程之间的切换。而使用协程却可以仅在编程语言的层面就能实现不同协程之间的切换,从而大大提升了并发编程的运行效率。协程允许我们在单线程模式下模拟多线程编程的效果,代码执行时的挂起与恢复完全是由编程语言来控制的,和操作系统无关。这种特性使得高并发程序的运行效率得到了极大地提升。为什么要使用协程?轻量、高效简单、好用可以用同步的方式编写异步代码协程的基本用法添加依赖首先要添加依原创 2021-01-20 13:06:11 · 252 阅读 · 0 评论 -
Kotlin 高阶函数
定义高阶函数高阶函数和 Lamdba 的关系是密不可分的。像接收 Lambda 参数的函数就可以称为具有函数式编程风格的 API,而如果想定义自己的函数式 API,那就得借助高阶函数来实现了。高阶函数的定义:如果一个函数接收另一个函数作为参数,或者返回值的类型是另一个函数,那么该函数就称为高阶函数。(这里的另一个函数指的是函数类型,就像整型等。)函数类型的基本语法规则:(String, Int) -> Unit-> 左边部分用来声明该函数接收什么参数,多个参数之间用逗号隔开,如果不接收任原创 2021-01-20 13:05:14 · 223 阅读 · 0 评论