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