Kotlin Flows 本文包含的内容: Flow是什么, 基本概念和用法. Flow的不同类型, StateFlow和SharedFlow比较. Flow在Android中的使用 安全收集. 操作符stateIn, shareIn的用法和区别. 本文被收录在集合中: https://github.com/mengdd/KotlinTutorials Coroutines Flow Basics Flow是什么 Flow可以按顺序发送多个值, 概念上是一个数据流, 发射的值必须是同一个类型.…
Kotlin Tutorials系列文章 想写一个有实用价值的Kotlin笔记, 让一线开发一看就懂, 看完就能上手. 当然官方文档更有参考价值了. 这个系列相对于官方文档的大而全来说, 最主要优势是: 自己写的比较亲切(??). 有一些自己的思路和二次梳理. 可以作为一个侧面参考. 这个flag立了很久, 真正写起来也断断续续写了很久. 目前也算是到了一个节点吧. 在掘金, 简书和公众号每篇都有发. Github这个repo可以作为最终备份吧. 以后说不定还会有补充内容. KotlinTuto…
[Kotlin]初识Kotlin(二) 1.Kotlin的流程控制 流程控制是一门语言中最重要的部分之一,从最经典的if...else...,到之后的switch,再到循环控制的for循环和while循环,都是在开发中离不开的. 之前在第一篇博文中提到了Kotlin中的for循环和foreach循环,从中可以看出Kotlin在这些流程处理中下了很大一片功夫,也进行了人性化的创新. 接下来我们就从最经典的if ... else ...来讲起! 1. if表达式 说起if,我们已经非常熟悉了.也许它…
[Kotlin]初识Kotlin之面向对象 1.类 在Kotlin中,类用关键字class来定义 如果一个类具有类体,那么需要使用{ }来写类体内容,如果不需要类体,那么只需要定义类名就可以了 // 定义一个alarmClock类 class AlarmClock { fun alarm() = println("叮铃铃...") } // 定义没有类体的alarm类 class Alarm 1. 类修饰符 final:不能被继承 open:可以被继承 abstract:抽象类 enu…
线性布局线性布局LinearLayout是最常用的布局,顾名思义,它下面的子视图像是用一根线串了起来,所以其内部视图的排列是有顺序的,要么从上到下垂直排列,要么从左到右水平排列.排列顺序只能指定一维方向的视图次序,可是手机屏幕是个二维的平面,这意味着还剩另一维方向需要指定视图的对齐方式.故而线性布局主要有以下两种属性设置方法:1. setOrientation: 设置内部视图的排列方向.LinearLayout.HORIZONTAL表示水平布局,LinearLayout.VERTICAL表示垂直…
既然kotlin是google和jetbrain联合搞的,开发环境不用说了肯定是Intellij Idea了. 先创建一个kotlin项目. 先来一个HelloWorld package com.xirtam.liqui.price /** * Created by xirtam on 17/7/4. */ class Main { } fun main(args: Array<String>) { println("Hello Kotlin"); } 注意和Java不同,…
作者:Antonio Leiva 时间:Mar 9, 2017 原文链接:https://antonioleiva.com/property-delegation-kotlin/ 如我们在前面文章中读到的,属性需要默认值,不能声明属性,而不给它们赋值. 由于你要存储视图到属性中,这就产生一个问题了.在对象创建期间,这赋值代码将被执行,而此时你不能访问这个内容. 那你有能做什么? 属性委托:委托属性值到另一个对象 属性委托将使用另一个对象,这个对象能够调用get和set(如果使用了var)返回结果…
为什么使用kotlin? 当然是因为项目目前的开发语言是kotlin啊! 一方面是想能够尽快适应项目,另一方面,kotlin这门语言独特的语法,确实很吸引我,也让我意识到java代码在某些程度上的繁琐性(其实这种繁琐性在一定的编码习惯下能够形成很好的代码阅读性,最起码个人这样认为). 最重要的是,kotlin是基于jvm的,而且其独特的语言特性和面向函数编程的思想都是一些很好很需要吸收的东西. 个人原因的话,我比较好奇心重,觉得这玩意很酷.在工作与个人的需求下, 决定努力去学好这门语言. Emm…
继续来研究Java调用Kotlin的一些东东. @Throws注解: 我们知道在Kotlin中是不存在checked exception的,而在Java中是存在的,那..如果从Java来调用Kotlin的角度那又是如何做到兼容的呢?下面写一个Kotlin代码: 接下来再用Java来调用此方法: 接下来运行一下: 那..貌似有点不合理呀,很明显这个方法是一定会抛异常的,那我们主动的try...catch..一下: 看一下异常提示: 其实在Kotlin中可以用@Throws注解来对确定要抛异常的(c…
19.1Web应用安全概述29519.2保护Web应用安全296 19.2.1指定安全约束297 19.2.2指定认证机制300 19.2.3在部署描述文件中指定认证机制302 19.2.4声明安全角色30319.3Web应用使用编程式安全304 19.3.1通过编程方式认证用户304 19.3.2通过编程方式检查调用者身份306 19.3.3编程式安全的示例代码306 19.3.4声明和链接角色引用30819.4示例:保护Web应用安全309 19.4.1设置系统来运行安全示例309 19.4…