RxJava - ตัวดำเนินการยูทิลิตี้
ต่อไปนี้เป็นตัวดำเนินการที่มักมีประโยชน์กับ Observables
ซีเนียร์ | ตัวดำเนินการและคำอธิบาย |
---|---|
1 | Delay ลงทะเบียนการดำเนินการเพื่อจัดการกับเหตุการณ์ในวงจรชีวิตที่สังเกตได้ |
2 | Materialize/Dematerialize แสดงรายการที่ส่งออกและส่งการแจ้งเตือน |
3 | ObserveOn ระบุตัวกำหนดตารางเวลาที่จะสังเกต |
4 | Serialize บังคับให้สังเกตได้เพื่อโทรแบบอนุกรม |
5 | Subscribe ดำเนินการกับการปล่อยรายการและการแจ้งเตือนอย่างสมบูรณ์จาก Observable |
6 | SubscribeOn ระบุตัวกำหนดตารางเวลาที่จะใช้โดย Observable เมื่อสมัครใช้งาน |
7 | TimeInterval แปลงค่าที่สังเกตได้เพื่อแสดงสัญญาณบ่งชี้ระยะเวลาที่ผ่านไประหว่างการปล่อยมลพิษ |
8 | Timeout ออกการแจ้งข้อผิดพลาดหากเวลาที่ระบุเกิดขึ้นโดยไม่มีการปล่อยรายการใด ๆ |
9 | Timestamp แนบการประทับเวลากับแต่ละรายการที่ปล่อยออกมา |
9 |
Using สร้างทรัพยากรที่ใช้แล้วทิ้งหรืออายุการใช้งานเช่นเดียวกับของ Observable |
ตัวอย่างตัวดำเนินการยูทิลิตี้
สร้างโปรแกรม Java ต่อไปนี้โดยใช้ตัวแก้ไขที่คุณเลือกใน C: \> RxJava
ObservableTester.java
import io.reactivex.Observable;
//Using subscribe operator to subscribe to an Observable
public class ObservableTester {
public static void main(String[] args) {
String[] letters = {"a", "b", "c", "d", "e", "f", "g"};
final StringBuilder result = new StringBuilder();
Observable<String> observable = Observable.fromArray(letters);
observable.subscribe( letter -> result.append(letter));
System.out.println(result);
}
}
ตรวจสอบผลลัพธ์
รวบรวมคลาสโดยใช้ javac คอมไพเลอร์ดังนี้ -
C:\RxJava>javac ObservableTester.java
ตอนนี้เรียกใช้ ObservableTester ดังนี้ -
C:\RxJava>java ObservableTester
ควรให้ผลลัพธ์ดังต่อไปนี้ -
abcdefg