当前位置: 首页 > news >正文

html5 电商网站模板上海闵行区邮编

html5 电商网站模板,上海闵行区邮编,资源优化排名网站,久雅科技软件开发外包案例代码:https://gitee.com/bobidali/lite-rx-java/commit/292e9227a5491f7ec6a07f395292ef8e6ff69290 RxJava 的调用第一步是封装了观察者接受了数据的处理,进一步就是使用 map 将数据操作传递给上下游 1、类似Observer.create 创建一个简单的观察者…

案例代码:https://gitee.com/bobidali/lite-rx-java/commit/292e9227a5491f7ec6a07f395292ef8e6ff69290

RxJava 的调用第一步是封装了观察者接受了数据的处理,进一步就是使用 map 将数据操作传递给上下游

1、类似Observer.create 创建一个简单的观察者

abstract class Single<T> : SingleSource<T> {companion object {@JvmStaticfun <T> just(item: T): Single<T> {return RxJavaPlugins.onAssembly(SingleJust(item))}}override fun subscribe(observer: SingleObserver<in T>) {Objects.requireNonNull(observer, "observer is null")try {var obsv = observerobsv = RxJavaPlugins.onSubscribe(this, obsv)subscribeActual(obsv)} catch (e: NullPointerException) {throw e} catch (e: Throwable) {throw NullPointerException("subscribeActual failed").initCause(e)}}protected abstract fun subscribeActual(observer: SingleObserver<in T>)
}
class SingleJust<T>(private val value: T) : Single<T>() {override fun subscribeActual(observer: SingleObserver<in T>) {observer.onSubscribe(Disposable.disposed())observer.onSuccess(value)}
}

2、在SingleObserver 中加入map 方法实现数据的承上启下

    fun <R> map(mapper: com.example.literj.kt.internal.functions.Function<in T, out R>): Single<R> {Objects.requireNonNull(mapper, "mapper is null")return RxJavaPlugins.onAssembly(SingleMap(this, mapper))}
class SingleMap<T, R>(private val source: SingleSource<out T>,private val mapper: Function<in T, out R>
) : Single<R>() {override fun subscribeActual(observer: SingleObserver<in R>) {source.subscribe(MapSingleObserver(observer, mapper))}internal class MapSingleObserver<T, R>(private val t: SingleObserver<in R>,private val mapper: Function<in T, out R>) : SingleObserver<T> {override fun onSuccess(t: T) {val v: Rtry {v = Objects.requireNonNull(mapper.apply(t),"The mapper function returned a null value.")} catch (e: Throwable) {onError(e)return}this.t.onSuccess(v)}override fun onSubscribe(d: Disposable) {t.onSubscribe(d)}override fun onError(e: Throwable) {t.onError(e)}}
}

3、铛铛,完成,看看调用案例

    public static void sample3() {String tag = "sample3";Log.d(TAG + " " + tag, "start");Single.just(777).map(data1 -> 777).map(data2 -> 888).subscribe(getSingleObserver(tag));}
2023-08-13 11:58:23.703 21522-21522/com.example.literj D/RxJavaTestUtil sample3: start
2023-08-13 11:58:23.713 21522-21522/com.example.literj D/RxJavaTestUtil sample3: onSubscribe
2023-08-13 11:58:23.713 21522-21522/com.example.literj D/RxJavaTestUtil sample3: onSuccess = 888

ok,那么下一篇就加入线程切换

http://www.yayakq.cn/news/526603/

相关文章:

  • 网站建设 青岛南京模板网站建设企业
  • photoshop网站模板计算机科学与技术网站建设方向
  • 会HTML怎么做网站腾讯云服务器做网站
  • 易营宝网站建设上海网站建设一般多少钱
  • 东莞网站搭建找哪里保定建站模板搭建
  • 分页网站北京酷站科技有限公司
  • 西安网站建设 appwordpress页面模板是哪个
  • 网站登录到wordpress信息发布网站推广技巧
  • 网站模板 酒店 中文网站开发需要什么知识
  • 佛山新网站建设特色wordpress lucene
  • 企业网站建设知名网站设计用什么软件实现
  • 网站流量50g珠海移动网站设计
  • 怎么才能创个网站精品资源共享课程网站建设
  • 苏州专业做网站较好的公司有哪些如何自己创建论坛网站
  • 番禺做网站公司模板网站与定制网站的价格
  • 网站开发建设公司地址wordpress 临时文件夹
  • WordPress主题怎么翻译长沙seo咨询
  • 做团购网站有什么难处网站开发用到的编程
  • 上传的网站怎么打开云盘搜索引擎入口
  • 网站建设电销网页设计 网站开发 网络安全
  • 怎么用自己主机做网站、视频发布网站有哪些内容
  • 网站没流量济南简单网站制作排名公司
  • 注册域名后怎么建站宁波seo快速优化平台有哪些
  • 网站建设中期目标腾讯企业邮箱浙江服务中心
  • 不买服务器做网站宁波网页制作公司哪家好
  • 网站seo优化全程记录思维导图中山市西区建设局网站
  • 做网站填素材怎样做的英文网站
  • 普集网站开发购物网站开发意义
  • 网站模板 寻模板汕头市潮南区紧急提醒
  • 招聘网站开发的背景大连网站开发建站