RxJava - Toán tử chuyển đổi
Sau đây là các toán tử được sử dụng để biến đổi một mục được phát ra từ một Có thể quan sát.
Sr.No. | Nhà điều hành & Mô tả |
---|---|
1 | Buffer Thu thập các mục từ Có thể quan sát thành các nhóm theo định kỳ và sau đó phát ra các nhóm chứ không phải các mục. |
2 | FlatMap Được sử dụng trong các đối tượng quan sát lồng nhau. Chuyển đổi các mục thành Có thể quan sát. Sau đó san phẳng các mục thành có thể quan sát duy nhất. |
3 | GroupBy Chia một Có thể quan sát thành tập hợp các Có thể quan sát được tổ chức theo khóa để tạo ra các nhóm mục khác nhau. |
4 | Map Áp dụng một chức năng cho mỗi mục được phát ra để biến đổi nó. |
5 | Scan Áp dụng một hàm cho từng mục được phát ra, tuần tự và sau đó phát ra giá trị kế tiếp. |
6 | Window Thu thập các mục từ Có thể quan sát vào cửa sổ Có thể quan sát theo định kỳ và sau đó phát ra các cửa sổ chứ không phải các mục. |
Ví dụ về toán tử chuyển đổi
Tạo chương trình Java sau bằng bất kỳ trình soạn thảo nào bạn chọn trong C: \> RxJava.
ObservableTester.java
import io.reactivex.Observable;
//Using map operator to transform 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
.map(String::toUpperCase)
.subscribe( letter -> result.append(letter));
System.out.println(result);
}
}
Xác minh kết quả
Biên dịch lớp bằng cách sử dụng javac trình biên dịch như sau -
C:\RxJava>javac ObservableTester.java
Bây giờ hãy chạy ObservableTester như sau:
C:\RxJava>java ObservableTester
Nó sẽ tạo ra kết quả sau:
ABCDEFG