Kotlin 学习
文章平均质量分 86
萌果爱吃芒果
身在井隅,心向璀璨。
展开
-
Kotlin 类型进阶
一、前言在 Kotlin 泛型(上) 中我们已经将 Kotlin 的 泛型基础 讲完了,想要学习泛型进阶,我们要先了解几个类。二、数据类 data class2.1、数据类的定义只需要在一个普通类的前面加一个 data,普通类就变成了数据类了,可以将它和 Java 的 JavaBean 做类比,如下:data class Book(val id: Long, val name: String, val author: Person)上面代码中定义在柱构造器中的属性又称为 component,可原创 2021-01-17 20:36:50 · 155 阅读 · 0 评论 -
Kotlin 泛型(上)
一、前言在 Kotlin 集合的变换与聚合 中我们已经将 Kotlin 的 集合变换与聚合 讲完了,今天我们来讲 Kotlin 的 SAM 转换。二、SAM 转换SAM 是(Single Abstract Method)的简写,我们将只有单一方法的接口称为 SAM 接口。2.1、Java 的 SAM 转换...原创 2021-01-16 20:32:13 · 395 阅读 · 0 评论 -
Kotlin 集合的变换与聚合
一、前言在 Kotlin 高阶函数与内联函数 中我们已经将 Kotlin 的 高阶函数 和 内联函数 讲完了,今天我们来讲 Kotlin 的 集合变换与聚合。二、集合变换与聚合2.1、集合的变换操作对于集合来说,最常见的使用方式就是对集合进行遍历,我们来看一下 Java 和 Kotlin 的遍历集合代码:Java:// 普通的 for 循环遍历for(int i = 0; i <= 10; i++) { System.out.println(i);}// for each 遍历原创 2021-01-15 21:56:34 · 767 阅读 · 0 评论 -
Kotlin 高阶函数与内联函数
一、前言在 Kotlin 学习笔记之内置类型(2)中我们已经将 Kotlin 函数的基本概念和基本用法讲完了,今天我们来讲函数进阶。二、高阶函数2.1、高阶函数概念高阶函数就是参数类型包含函数类型或者返回值类型是函数类型的函数,简单的说,高阶函数就是函数里面套函数,如下所示:// 参数类型是函数类型fun needsFunction(block: () -> Unit) { block()}// 返回值是函数类型fun returnsFunction(): () -> Lo原创 2021-01-14 21:55:23 · 268 阅读 · 0 评论 -
Kotlin 表达式与运算符
一、前言在 Kotlin 学习笔记之内置类型(1)和 Kotlin 学习笔记之内置类型(2)中我们已经讲了 Kotlin 内置类型中的基本类型、数组、区间、集合框架和函数。原创 2021-01-13 21:41:45 · 942 阅读 · 0 评论 -
Kotlin 空类型安全与智能类型转换
一、前言在 Kotlin 中的类与接口 中我们已经讲了 Kotlin 的 类、接口 和 扩展方法,今天我们来讲 Kotlin 中的 空类型安全 和 智能类型转换。二、Kotlin 空类型安全2.1、空类型安全概念Java 语言中是没有空类型安全这一概念的,所以写 Java 代码经常会出现空指针异常,但是 Kotlin 致力于消除空引用所带来的危险,所以就有了空类型安全概念。下面这段代码在 Kotlin 中是无法编译通过的,因为 Kotlin 的 String 是不能接受空值的,所以这个赋值操作是不原创 2021-01-12 21:10:20 · 238 阅读 · 0 评论 -
Kotlin 中的类与接口
一、前言在 Kotlin 学习笔记之内置类型(1)和 Kotlin 学习笔记之内置类型(2)中我们已经讲了 Kotlin 内置类型中的基本类型、数组、区间、集合框架和函数。二、Kotlin 中的类和接口2.1、类的定义Java:// 简单的类public class SimpleClass {}// 有属性和方法的类public class SimpleClass { public int x; public void y() { }}// 有构造方法的类public cl原创 2021-01-11 21:21:25 · 301 阅读 · 0 评论 -
Kotlin 学习笔记之内置类型(2)
一、前言在 Kotlin 学习笔记之内置类型(1) 中我们已经讲了 Kotlin 内置类型中的基本类型、数组和区间,今天我们来讲 Kotlin 的集合框架和函数。二、Kotlin 的集合框架Kotlin 的集合有以下特点:增加了 “不可变” 集合框架的接口;复用了 Java API 的所有实现类型;提供了丰富易用的方法,例如 forEach/map/flatMap。2.1、与 Java 对比Kotlin 中的集合分为可变与不可变,与 Java 的比较如下图所示:Kotlin原创 2021-01-04 22:28:01 · 259 阅读 · 1 评论 -
Kotlin 学习笔记之内置类型(1)
一、基本类型1.1、与 Java 对比我们来看一下 Kotlin 的基本类型与 Java 的区别,具体如下表所示:KotlinJava字节Bytebyte/Byte整型Int & Longint/Integer & long/Long浮点型Float & Doublefloat/Float & double/Double字符Charchar/Character字符串StringString1.2、声原创 2021-01-03 16:34:43 · 256 阅读 · 2 评论 -
给 Android 开发者的 Kotlin 教程(三)
一、前言在 给 Android 开发者的 Kotlin 教程(二)中我们讲了 Kotlin 的必备基础,分别是 Kotlin 中的基本数据类型、数组以及集合这三大知识点。这一节我们来讲一下 Kotlin 中的方法和 Lambda 表达式这两个知识点。二、Kotlin 方法在 Java 中对象是最重要的,而在 Kotlin 中,方法才是最重要的,Kotlin 中方法是可以直接定义在文件里面的,不需要一定定义在类里面。2.1、方法声明Kotlin 中一个方法的基本格式如下所示:具体代码实现原创 2020-10-02 22:10:28 · 409 阅读 · 0 评论 -
给 Android 开发者的 Kotlin 教程(二)
一、Kotlin 概述在 给 Android 开发者的 Kotlin 教程(一)中我们Google 在2019年的 Google I/O 大会上宣布 Kotlin 被选为 Android 开发首选语言。1.1、Kotlin 特点简洁易用: Kotlin中提供了大量的扩展,使得我们的代码更加简洁,开发出来的框架更加易用;安全: 避免空指针异常等整个类的错误;互操作性: 充分利用 JVM、Android 和浏览器的现有库;工具友好: 可用任何 Java IDE 或者使用命令行构建。1.2、学原创 2020-09-21 21:55:42 · 557 阅读 · 0 评论 -
给 Android 开发者的 Kotlin 教程(一)
一、Android 中的 UI 线程概述Android 的 UI 线程是线程不安全的,也就是说想要更新应用程序中的 UI 元素,则必须在主线程中进行。所以主线程又叫做 UI 线程。若在子线程中更新 UI 程序会报错。但是我们经常有这样一种需求:需要在子线程中完成一些耗时任务后根据任务执行结果来更新相应的UI。这就需要子线程在执行完耗时任务后向主线程发送消息,主线程来更新UI。也就是线程之间的通信,线程间通信方法有很多,今天我们主要来讲利用 Handler 来实现线程之间的通信。二、常用类1、Handl原创 2020-09-16 20:27:25 · 873 阅读 · 0 评论