- 博客(11)
- 资源 (28)
- 收藏
- 关注
原创 kotlin : lambda 作为参数及返回值
作为参数:fun main() { println("duck".filter { it in 'a'..'e' }) println("hello world!".filter())}fun String.filter(process: ((Char) -> Boolean)? = { c -> c in 'a'..'z' }): String { ...
2019-09-26 21:52:31 705
原创 kotlin : 高阶函数概览
按照定义,高阶函数就是以另一个函数作为参数或者返回值的函数。在Kotiin中, 函数可以用lambda或者函数引用来表示。因此,任何以 lambda 或者函数引用作为参数的函数,或者返回值为 lambda 或函数 引用的函数,或者两者都满足的函数都是高阶函数 。来看一段代码:fun main() { val added = compute(2, 3) { a, b -&g...
2019-09-25 23:52:38 206
原创 kotlin: with 与 apply
zz kotlin 中有两个通用的扩展函数 with和apply。fun az(): String = with(StringBuffer()) { // 通过 with ,将第一个参数作为lambda 的 this 对象 for (c in 'A'..'Z') { this.append(c) } this.append("\n done!")...
2019-09-22 11:25:28 599
原创 kotlin : flatMap 与 rxJava flatMap 对比
先看一段代码: val strings = listOf("abc", "de") strings.map { s -> s.toList() } strings.flatMap { s -> s.toSet() }.run { println("flatMap: $this") } // flatMap: [a, b, c, d, e] s...
2019-09-22 01:16:41 2023
原创 kotlin lambda 表达式概览
先看一段代码:fun main(args: Array<String>) { val sum = { a: Int, b: Int -> a + b } println(sum) println(sum(1, 2)) println({ a: Int, b: Int -> a + b }(3, 4)) println({ a...
2019-09-21 15:14:12 163
原创 kotlin 类委托
kotlin 提供了一个很方便的语法去实现“装饰者”模式。装饰者模式叫做“是你还有你,干活的还是你”。Java API 中对装饰者的典型实现有 buffer流。比如:FilterInputStream,BufferedInputStream.简单来说,实现装饰者的基本步骤是:继承目标类。有一个成员是目标类的类型。提供与目标类完全相同的公共方法,这些方法实际是调用成员的对应方法去处...
2019-09-21 12:57:12 305
原创 kotlin:精湛的递归
首先来看一段代码:// kotlinclass Sum(val left: Expr, val right: Expr) : Exprfun eval(e: Expr): Int = when (e) { is Num -> { println("num: ${e.value}") ...
2019-09-16 23:46:00 455
原创 Android: Fragment 再次踩坑之回退与前进
比如一个 Activity 里面包含3个fragment,通过底部导航栏进行切换。类似微信的界面。然后,每个 fragment 里面点击一些按钮又会进入到子 fragment 里面。默认的预期肯定是,从 子 fragment返回之后,显示上一个。 主界面本身的3个fragment的返回就退出 当前activity了。实现起来真是有点麻烦。特别是如果想用系统提供的addToBackStack ...
2019-09-09 00:27:01 1071 1
原创 android: mqtt 浅析
由于项目中需要使用到 mqtt 协议进行数据通信,所以,我这边就去了解了一些,并做了一个简单的实现。关于前置内容:Mqtt实战项目 点评:这个博客很清晰,代码也是可以直接运行的hivemq 点评:做了一些介绍,但是作用不太大eclipse paho 实现的 mqtt 开源库 api 点评:这个api 其实不完整,具体连接建立这些逻辑不在这里面mqtt 协议中文版 点评:内容很多,但是...
2019-09-08 13:50:43 663
原创 Android:浅谈 mvp-clean 架构
官方示例:todo-mvp-clean官方对 clean 的解读:the-clean-architecturemvp-clean 可以认为是 对 mvp 的再次分层。不过就我个人而言,我认为 clean 是一种清晰的思想;而 mvp 不是。对比 mvp-clean 与 mvp 的示例代码会发现,里面多了一个 usecase 的概念。use case 简单翻译可以认为是“用例”。用例是...
2019-09-03 23:14:15 1324 1
原创 android:浅谈 mvp 架构
虽然谷歌继 mvp 之后,又推出了 mvvm 架构。不过,从官方示例仓库来看,谷歌是比较喜欢 mvp 架构的。因为看其介绍,后面的其他示例几乎都是基于 mvp 架构的代码。官方示例代码仓库:todo-mvp话说这个仓库出来很早了,从提交日志可以看到 在 2015-10 就开始了,然后也是在 2015 年底,就完成了该示例代码。不过一直都有维护,目前已经把 数据库 换成了 谷歌新推出的 Je...
2019-09-01 20:16:33 438
ClearCache(5.0)
2016-03-22
混淆打包的小DEMO
2016-02-29
As的初使用
2016-01-05
混淆打包SmsCheck
2015-12-29
短信验证加强
2015-12-28
SmsReadDemo
2015-12-27
YYYY短信验证
2015-12-23
基于云之讯sdk的语音通话app Demo
2015-12-06
自定义View的学习使用
2015-11-18
导入导出Demo
2015-10-25
Husband看门狗
2015-10-08
MoocBmob云服务使用
2015-10-07
高仿微信5.3界面,Android版
2015-10-05
微信5.3界面的高仿|Adnroid版
2015-10-05
AsyncTask加载ListView的Item图片完整版
2015-10-03
AsyncTask加载ListView的Item图片
2015-10-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人