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