RxJava

Similar documents
教学〔2016〕120号

Microsoft Word - 中节能_工业项目节能评估审查导则Draft.doc

NethersoleJO89(8).indd

国际财务报告准则第13号——公允价值计量


南京市人才服务中心

untitled

2013_spring_catalogue


<4D F736F F D20D2BBD6D6BBF9D3DA4A617661C6BDCCA8B5C4BFC9B1E0B3CCC7B6C8EBCABDCFB5CDB3C9E8BCC631312E342E646F63>

<4D F736F F D20312D3520D6F7B0ECC8AFC9CCCDC6BCF6B1A8B8E62DB6A8>

<4D F736F F D20312D3520D6F7B0ECC8AFC9CCCDC6BCF6B1A8B8E6A3A8B7E2C3E6B2CAD3A12BD5FDCEC4BADAB0D7B4F2D3A1A3A92E646F63>

1.5招募说明书(草案)

系列02(簡)

Java java.lang.math Java Java.util.Random : ArithmeticException int zero = 0; try { int i= 72 / zero ; }catch (ArithmeticException e ) { // } 0,

電機工程系認可證照清單 /7/1

抗 日 战 争 研 究 年 第 期

团 学 要 闻 我 校 召 开 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 3 月 17 日, 我 校 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 在 行 政 办 公 楼 五 楼 会 议 室 举 行, 校 团 委 委 员 各 院 ( 系 ) 团 委 书 记 校 学 生

香港社會的特徵1b

Slide 1

附件1:

2013 C 1 #include <stdio.h> 2 int main(void) 3 { 4 int cases, i; 5 long long a, b; 6 scanf("%d", &cases); 7 for (i = 0; i < cases; i++) 8 { 9 scanf("%

第 三 章 审 计 证 据 2

2013_spring_handbook



“百企入校——广西青年企业家协会高校

EJB-Programming-3.PDF

电信系教学大纲的基本规范

附 件 : 上 海 市 建 筑 施 工 企 业 施 工 现 场 项 目 管 理 机 构 关 键 岗 位 人 员 配 备 指 南 二 一 四 年 九 月 十 一 日 2

名 称 生 命 科 学 学 院 环 境 科 学 1 生 物 学 仅 接 收 院 内 调 剂, 初 试 分 数 满 足 我 院 生 物 学 复 试 最 低 分 数 线 生 命 科 学 学 院 生 态 学 5 生 态 学 或 生 物 学 生 命 科 学 学 院



投 资 者 可 在 基 金 管 理 人 指 定 的 销 售 机 构 申 购 和 赎 回 美 元 等 外 币 销 售 的 基 金 份 额, 具 体 详 见 基 金 管 理 人 相 关 公 告 2 在 三 申 购 与 赎 回 的 原 则 部 分 增 加 : 1 本 基 金 采 用 多 币 种 销 售,

目 录 第 一 部 分 业 务 监 管 第 一 章 发 布 证 券 研 究 报 告 业 务 监 管... 3 第 一 节 资 格 管 理... 3 第 二 节 主 要 职 责... 3 第 三 节 工 作 规 程... 3 第 四 节 执 业 规 范... 3 第 二 部 分 专 业 基 础 第 二

中国银监会关于印发《企业集团财务公司风险评价和分类监管指引》的通知

《C语言基础入门》课程教学大纲

<4D F736F F D20312ECEDECFDFB5E7B5F7CAD4B9A4B9FABCD2D6B0D2B5B1EAD7BC2E646F63>

:厦门安妮股份有限公司关于重大资产重组事项相关公告的更正公告+

Microsoft PowerPoint - plan03.ppt

KeywordsDigital library, Digital resource, Evaluation, Evaluation model, Measurement, Index system


三级计算机网络技术

第 四 条 建 设 单 位 对 可 能 产 生 职 业 病 危 害 的 建 设 项 目, 应 当 依 照 本 办 法 向 安 全 生 产 监 督 管 理 部 门 申 请 职 业 卫 生 三 同 时 的 备 案 审 核 审 查 和 竣 工 验 收 建 设 项 目 职 业 卫 生 三 同 时 工 作 可

学 年 第 二 学 期 集 中 考 试 安 排 (18 周 ) 考 试 日 期 :6 月 27 日 星 期 一 8:10-9:50 第 二 公 共 教 学 楼 A 区 A 高 等 数 学 ( 理 二 2) 复 材 材 料 科 学 与 工 程

发 展 兵 团 电 子 政 务, 无 疑 是 推 动 兵 团 信 息 化 提 高 兵 团 行 政 管 理 效 率 的 重 要 举 措 1.2 项 目 目 标 兵 团 电 子 政 务 外 网 是 国 家 网 的 32 个 省 级 网 之 一, 一 期 工 程 于 2009 年 9 月 开 始 建 设,

行 业 市 场 研 究 属 于 企 业 战 略 研 究 范 畴, 作 为 当 前 应 用 最 为 广 泛 的 咨 询 服 务, 其 研 究 报 告 形 式 呈 现, 通 常 包 含 以 下 内 容 : 一 份 专 业 的 行 业 研 究 报 告, 注 重 指 导 企 业 或 投 资 者 了 解 该


行 业 市 场 研 究 属 于 企 业 战 略 研 究 范 畴, 作 为 当 前 应 用 最 为 广 泛 的 咨 询 服 务, 其 研 究 报 告 形 式 呈 现, 通 常 包 含 以 下 内 容 : 一 份 专 业 的 行 业 研 究 报 告, 注 重 指 导 企 业 或 投 资 者 了 解 该

上篇 财 务

( 四 ) 交 易 所 认 为 必 要 的 其 他 情 形 单 边 市 是 指 某 一 合 约 收 市 前 5 分 钟 内 出 现 只 有 停 板 价 格 的 买 入 ( 卖 出 ) 申 报 没 有 停 板 价 格 的 卖 出 ( 买 入 ) 申 报, 或 者 一 有 卖 出 ( 买 入 ) 申 报

变 量 的 主 要 作 用 是 存 取 数 据 提 供 存 放 信 息 的 容 器 对 于 变 量 必 须 明 确 变 量 的 命 名 变 量 的 类 型 变 量 的 声 明 及 其 变 量 的 作 用 域 JavaScript 是 一 种 弱 类 型 语 言, 也 就 是 说, 在 声 明 变 量

扫 清 了 体 制 机 制 障 碍 2009 年 文 化 产 业 振 兴 规 划 通 过 并 实 施, 标 志 着 文 化 产 业 已 经 上 升 为 国 家 的 战 略 性 产 业 2010 年, 中 宣 部 新 闻 出 版 总 署 文 化 部 等 部 委 共 出 台 了 十 余 项 文 化 产

詞 彙 表 編 號 詞 彙 描 述 1 預 約 人 資 料 中 文 姓 名 英 文 姓 名 身 份 證 字 號 預 約 人 電 話 性 別 2 付 款 資 料 信 用 卡 別 信 用 卡 號 信 用 卡 有 效 日 期 3 住 房 條 件 入 住 日 期 退 房 日 期 人 數 房 間 數 量 入

第四章 投资性房地产

2 根 据 广 东 省 交 通 建 设 工 程 施 工 现 场 开 工 前 考 核 评 表 或 根 据 广 东 省 交 通 建 设 工 程 施 工 现 场 实 施 过 程 考 核 评 表 的 和 内 容 进 行 核 查 ; 3 现 场 抽 查 具 有 代 表 性 的 各 岗 位 人 员 ( 从 事

( ) 信 号 与 系 统 Ⅰ 学 科 基 础 必 修 课 教 周 2016 年 06 月 13 日 (08:00-09:35) ( )

一 公 共 卫 生 硕 士 专 业 学 位 论 文 的 概 述 学 位 论 文 是 对 研 究 生 进 行 科 学 研 究 或 承 担 专 门 技 术 工 作 的 全 面 训 练, 是 培 养 研 究 生 创 新 能 力, 综 合 运 用 所 学 知 识 发 现 问 题, 分 析 问 题 和 解 决

抗 日 战 争 研 究 % 年 第 期! # # % %

精 品 库 我 们 的 都 是 精 品 _www.jingpinwenku.com 较 好 的 保 护 单 机 应 用 软 件 但 却 无 法 应 用 于 网 络 应 用 软 件, 因 为 服 务 器 端 程 序 运 行 在 Java 应 用 服 务 器 上, 因 此 本 地 化 的 解 决 方 案

第 期 徐 育 锋 等 城 市 轨 道 交 通 网 络 系 统 的 面 向 对 象 体 系 建 模 - 地 描 述 现 实 世 界 从 而 构 造 出 模 块 化 的 可 重 用 的 和 维 护 性 好 的 软 件 目 前 面 向 对 象 技 术 已 在 交 通 领 域 得 到 了 广 泛 的 应

各位股东及股东代表:

行 业 市 场 研 究 属 于 企 业 战 略 研 究 范 畴, 作 为 当 前 应 用 最 为 广 泛 的 咨 询 服 务, 其 研 究 报 告 形 式 呈 现, 通 常 包 含 以 下 内 容 : 一 份 专 业 的 行 业 研 究 报 告, 注 重 指 导 企 业 或 投 资 者 了 解 该

02 软 件 工 程 技 术 一 3301 数 学 一 4861 数 据 结 构 面 向 对 象 技 术 计 算 机 组 成 原 理 03 软 件 工 程 管 理 04 软 件 服 务 工 程 或 862 软 件 工 程 软 件 工 程 10 不 多 于 1 人 01 软 件 工 程

登录、注册功能的测试用例设计.doc

上海外国语大学大学生创新创业训练计划项目管理办法

幻灯片 1

二 公 司 分 立 的 作 用 公 司 分 立 是 现 在 公 司 资 本 运 作 重 组 中 的 一 种 重 要 方 式, 其 有 利 于 调 整 公 司 内 部 经 营 结 构 促 使 公 司 主 营 业 务 清 晰 和 降 低 代 理 成 本 等 其 它 作 用 从 实 践 中 来 看, 公

户 购 买 计 帮 获 达 预 标 对 们 计 进 训 练 时 获 请 浏 览 们 练 栏 产 训 练 诀 产 务 栏 软 专 为 计 务 电 话 传 办 处 环 灵 顿 号 业 厦 楼 电 话 传

Microsoft Word - 簡體 (Simplified Chinese).doc

中央财经大学同等学力申请硕士学位题库考试

程 序 由 语 句 构 成, 编 程 从 语 句 开 始

一 从 分 封 制 到 郡 县 制 一 从 打 虎 亭 汉 墓 说 起

全国建筑市场注册执业人员不良行为记录认定标准(试行).doc

Microsoft PowerPoint - plan03.ppt

clad_exam_preparation_guide

<4D F736F F D C3E6CFF2B6D4CFF3A3A8B5DAC8FDD5C220C0E0CCD8D0D4A3A92E646F63>

一 六 年 级 下 册 教 科 书 总 体 说 明 ( 一 ) 教 学 内 容 本 册 教 科 书 一 共 安 排 了 5 个 教 学 单 元, 其 中 前 4 个 单 元 为 新 知 识, 第 五 单 元 是 对 整 个 小 学 阶 段 所 学 数 学 知 识 系 统 的 整 理 和 复 习

架构师-下午1-10下

长 期 待 摊 费 用 递 延 所 得 税 资 产 其 他 非 流 动 资 产 其 中 : 特 准 储 备 物 资 非 流 动 资 产 合 计 50,741, ,639, 资 产 总 计 907,501, ,811, 法 定 代 表 人 :

___证券投资基金招募说明书1

!!!!!

目 录 第 一 章 黄 金 市 场 基 础 知 识... 4 第 一 节 黄 金 白 银 铂 的 基 本 特 性... 4 一 黄 金 基 本 特 性... 4 二 白 银 基 本 特 性... 4 三 铂 的 基 本 特 性... 4 第 二 节 黄 金 的 文 化 渊 源... 4 一 黄 金

抗 战 时 期 国 民 政 府 的 银 行 监 理 体 制 探 析 % # % % % ) % % # # + #, ) +, % % % % % % % %

1. 总 体 目 标 通 过 本 课 程 的 学 习, 使 学 生 掌 握 新 大 陆 物 联 网 统 安 装 部 署 传 感 信 息 采 集 二 维 码 识 读 RFID 读 写 Zigbee 组 网 串 口 通 信 RS485 总 线 等 知 识 和 物 联 网 实 训 设 备 的 安 装 部

上海证券交易所会议纪要

along'Print.

中国共产党发展党员工作细则

1 综 合 性 高 管 类 酒 店 总 经 理 分 公 司 总 经 理 旅 游 营 销 中 文 类 万 2 行 政 人 事 管 理 类 人 力 资 源 经 理 培 训 部 经 理 大 堂 副 理 人 力 资 源 管 理 旅 游 管 理 3 财 务 管 理 类 财 务 总 监 财 务 经

<4D F736F F D20C1DFB1B92DBDC5C5B9C5F5C0DAC8B8BBE7B0FCB8AEB9E6B9FD2DBFF8B9AEBABB2E646F63>

EJB-Programming-4-cn.doc

第2章 数据类型、常量与变量

广东培正学院关于编制2012本科插班生入学考试

报 价 量 单 位 变 动 点 交 割 方 式 挂 牌 基 准 价 每 日 结 算 价 到 期 交 割 价 到 期 交 割 结 算 金 额 等 2.2 合 约 代 码 交 易 系 统 中 用 于 区 分 不 同 合 约 品 种 的 代 码, 由 标 的 债 券 缩 写 和 到 期 月 份 组 成 如

名 称 依 据 使 主 体 5 对 煤 矿 注 册 安 全 工 程 师 注 册 执 业 活 动 的 监 督 规 章 注 册 安 全 工 程 师 管 理 规 定 第 五 条 国 家 安 全 生 产 监 督 管 理 总 局 ( 以 下 简 称 安 全 监 管 总 局 ) 对 全 国 注 册 安 全 工

<4D F736F F D20C9CFBAA3D6A4BCE0BED6BBE1BCC6BCE0B9DCCDA8D1B62E646F63>

[table_page] 目 录 一 嘉 实 中 证 行 业 ETF 择 时 策 略... 2 二 嘉 实 中 证 行 业 ETF 择 时 组 合 投 资 策 略... 4 三 大 小 盘 配 置 策 略... 5 请 务 必 阅 读 正 文 最 后 的 中 国 银 河 证 券 股 份 公 司 免

<4D F736F F D20C0A5D2BDB4F3B5B3B7A2A1B A1B33734BAC5B9D8D3DAD3A1B7A2A1B6C0A5C3F7D2BDBFC6B4F3D1A7BDCCD6B0B9A4B4FAB1EDB4F3BBE1B9A4D7F7CCF5C0FDA1B7BACDA1B6C0A5C3F7D2BDBFC6B4F3D1A7B6FEBCB6BDCCD6B0B9A4B4FAB1EDB4F3BBE1C

第2章

广东商学院招标投标管理办法(试行)

Transcription:

RxJava By 侦跃 & @hi 头 hi

RxJava 扩展的观察者模式 处

观察者模式 Observable 发出事件 Subscriber 订阅事件

bus.post(new AnswerEvent(42)); @Subscribe public void onanswer(answerevent event) {! }!

Observable observable = Observable.create(new Observable.OnSubscribe<String>() { @Override public void call(subscriber<? super String> subscriber) { subscriber.onnext("a"); subscriber.oncompleted(); } }); observable.subscribe(new Subscriber() { });

观察者模式的不 足 时结 错误

RxJava 进 oncomplete Subscriber 结 onerror Subscriber 错

Observable.just("hello").subscribe(new Subscriber<String>() { @Override public void oncompleted() { }! @Override public void onerror(throwable e) { }! @Override public void onnext(string s) { System.out.println(s); } });

unsubscribe Subscription subscription = observable.subscribe(system.out::println); subscription.unsubscribe();

处 观 产 线 订阅 线 处

Observable.just("hello") // 观 线 产.subscribeOn(Schedulers.newThread()) // 观 UI 线.observeOn(AndroidSchedulers.mainThread()) // 为 UI 线程接收数据, // 这 UI.subscribe(System.out::println);

Scheduler 认 RxJava 产 订阅 线 运! Scheduler 换 产 订阅 执 线! RxJava 认 Scheduler 针对 务选择

Schedulers Schedulers.immediate() Schedulers.trampoline() Schedulers.newThread() Schedulers.computation() Schedulers.io() AndroidSchedulers.mainThread()

处 -Operator 对 进 变换处 operators 义 operator

Observable.just(1, 2, 3).map(new Func1<Integer, String>() { @Override public String call(integer integer) { return integer.tostring(); } }).subscribe(new Action1<String>() { @Override public void call(string s) { System.out.println(s); } }); Observable.just(1, 2, 3).map(integer -> integer.tostring()).subscribe(system.out::println);

务 组 组 转换 过滤掉 小于 1

Observable.just("1", "2", "2", "3", "4", "5").map(Integer::parseInt).filter(s -> s > 1).distinct().take(3).reduce((integer, integer2) -> integer.intvalue() + integer2.intvalue( ).subscribe(system.out::println);//9

operators 创建 Observable create just 变换 Observable map flatmap 过滤 Observable filter first last Observable merge zip 错误处理 catch 过滤 all skiputil takewhile average reduce count

义 operator Observable.just( a ).lift(subscriber -> { return new Subscriber<String>() { @Override public void oncompleted() { subscriber.oncompleted(); } @Override public void onerror(throwable e) { subscriber.onerror(e); } @Override public void onnext(string s) { subscriber.onnext(1); } }; }).map(i -> i).subscribe(system.out::println);//1

Android 应 Retrofit RxAndroid RxBinding rx-preferences sqlbrite RxLifecycle

Retrofit @GET("/story/{id}") Observable<NewsDetail> getnewsdetailobservable(@path("id") long id);

RxAndroid AndroidSchedulers.mainThread()

RxBinding RxJava 对 Android UI 进

RxView.clicks(findViewById(R.id.btn_throttle)).throttleFirst(1, TimeUnit.SECONDS).subscribe(aVoid -> { System.out.println("click"); });

RxPreference RxJava SharePreference

SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context);! RxSharedPreferences rxpreferences = RxSharedPreferences.create(preferences);! Preference<String> username = rxpreferences.getstring( username");! username.asobservable().subscribe(new Action1<String>() { @Override public void call(string username) { Log.d(TAG, "Username: " + username); } }

RxBinding 结合 RxPreference SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this); RxSharedPreferences rxpreferences = RxSharedPreferences.create(preferences); Preference<Boolean> checked = rxpreferences.getboolean("checked", true); CheckBox checkbox = (CheckBox) findviewbyid(r.id.cb_test); RxCompoundButton.checkedChanges(checkBox).subscribe(checked.asAction()); checked.asobservable().subscribe(aboolean -> { System.out.println("----------------checked: " + aboolean); });

RxLifecycle Activity Fragment 结

myobservable.compose(rxlifecycle.binduntilactivityevent(lifecycle, ActivityEvent.DESTROY)).subscribe(); myobservable.compose(rxlifecycle.bindactivity(lifecycle)).subscribe();

RxJava 场 现 层 调 (Callback hell) 杂 处 应 UI 杂 线 换

层 调 gettoken(new Callback<String>() { @Override public void success(string token) { getuser(userid, new Callback<User>() { @Override public void success(user user) { userview.setuser(user); }! @Override public void failure(retrofiterror error) { // Error handling } }; }! @Override public void failure(retrofiterror error) { // Error handling } });

gettoken("username", "password").flatmap(token -> getuser(token)).subscribe(user -> { System.out.println("user: " + user.tojson()); });

杂 处 Observable.just("1", "2", "2", "3", "4", "5").map(Integer::parseInt).filter(s -> s > 1).distinct().take(3).reduce((integer, integer2) -> integer.intvalue() + integer2.intvalue()).subscribe(system.out::println);//9

应 UI CheckBox checkbox = (CheckBox) findviewbyid(r.id.cb_test); RxCompoundButton.checkedChanges(checkBox).subscribe(checked.asAction());

杂 线 换 Observable<String> observable1 = createobservable1().subscribeon(schedulers.newthread()); Observable<String> observable2 = createobservable2().subscribeon(schedulers.io()); Observable.concat(observable1, observable2).subscribeon(schedulers.computation()).subscribe(system.out::println);

RxJava 库体积稍 大 (900K 对 时 unsubscr RxBinding 库 ) Java6 lambda 简化代码 (Retrolambda & Gr

http://reactivex.io/ 扔物线的 : 给 Android 发 RxJava 详解 http://gank.io/post/ 560e15be2dca930e00da1083 RxJava http://blog.csdn.net/ lzyzsd/article/details/41833541

应 用案例 Square SoundCloud Flipboard 动

Thanks

Q&A