本篇將是此系列的最后一篇了,介紹Rxjava1的轉(zhuǎn)換API
toList
通常壳嚎,發(fā)射多項(xiàng)數(shù)據(jù)的Observable會(huì)為每一項(xiàng)數(shù)據(jù)調(diào)用onNext方法桐智。你可以用toList操作符改變這個(gè)行為,讓Observable將多項(xiàng)數(shù)據(jù)組合成一個(gè)List烟馅,然后調(diào)用一次onNext方法傳遞整個(gè)列表说庭。
toMap
toMap收集原始Observable發(fā)射的所有數(shù)據(jù)項(xiàng)到一個(gè)Map(默認(rèn)是HashMap)然后發(fā)射這個(gè)Map。你可以提供一個(gè)用于生成Map的Key的函數(shù)郑趁,還可以提供一個(gè)函數(shù)轉(zhuǎn)換數(shù)據(jù)項(xiàng)到Map存儲(chǔ)的值(默認(rèn)數(shù)據(jù)項(xiàng)本身就是值)刊驴。
toSortedList
toSortedList類似于toList,不同的是穿撮,它會(huì)對(duì)產(chǎn)生的列表排序缺脉,默認(rèn)是自然升序,如果發(fā)射的數(shù)據(jù)項(xiàng)沒有實(shí)現(xiàn)Comparable接口悦穿,會(huì)拋出一個(gè)異常攻礼。然而,你也可以傳遞一個(gè)函數(shù)作為用于比較兩個(gè)數(shù)據(jù)項(xiàng)栗柒,這是toSortedList不會(huì)使用Comparable接口捌显。
最后尺上,按照約定瓷耙,附上源碼地址:https://github.com/ZLOVE320483/RxJavaApi