Skip to content

Commit 2fbb451

Browse files
committed
Conditional Operators = Done
1 parent 13bf465 commit 2fbb451

3 files changed

Lines changed: 147 additions & 1 deletion

File tree

.idea/modules.xml

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Conditional/src/Main.java

Lines changed: 145 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,145 @@
1+
import io.reactivex.Observable;
2+
3+
import java.util.Arrays;
4+
import java.util.Collections;
5+
import java.util.List;
6+
7+
8+
public class Main {
9+
public static void main( String[] args ) {
10+
all();
11+
contains(5);
12+
skipWhile();
13+
skipUntil();
14+
takeWhile();
15+
takeUntil();
16+
}
17+
18+
/**
19+
* Emit true if all items emitted by an Observable meet some criteria, or false
20+
* otherwise.
21+
**/
22+
private static void all() {
23+
System.out.println("all");
24+
25+
List<Integer> integerList = Arrays.asList(3, 5, 7);
26+
System.out.println(integerList);
27+
Observable<Integer> integerObservable = Observable.fromIterable(integerList);
28+
29+
System.out.println("all(x => isPrime(x) =====================>");
30+
31+
integerObservable.all(Main::isPrime)
32+
.subscribe(System.out::println);
33+
System.out.println();
34+
}
35+
36+
private static boolean isPrime(int number) {
37+
if (number % 2 == 0) return false;
38+
39+
for (int i = 3; i*i <= number; i+=2) {
40+
if (number % i == 0)
41+
return false;
42+
}
43+
return true;
44+
}
45+
46+
/**
47+
* Emit true if an Observable emits a particular item, or false otherwise.
48+
*
49+
**/
50+
private static void contains(Object element) {
51+
System.out.println("contains");
52+
53+
List<Integer> integerList = Arrays.asList(1, 55, 25);
54+
System.out.println(integerList);
55+
Observable<Integer> integerObservable = Observable.fromIterable(integerList);
56+
57+
System.out.println("contains(" + element + ") =====================>");
58+
59+
integerObservable.contains(element)
60+
.subscribe(System.out::println);
61+
System.out.println();
62+
}
63+
64+
/**
65+
* Discard items emitted by an Observable until a specified condition becomes false.
66+
*
67+
**/
68+
private static void skipWhile() {
69+
System.out.println("skipWhile");
70+
71+
List<Integer> integerList = Arrays.asList(1, 2, 3);
72+
System.out.println(integerList);
73+
Observable<Integer> integerObservable = Observable.fromIterable(integerList);
74+
75+
System.out.println("skipWhile(x => x != 2) =====================>");
76+
77+
integerObservable.skipWhile(x -> x != 2)
78+
.subscribe(System.out::println);
79+
System.out.println();
80+
}
81+
82+
/**
83+
* Discard items emitted by an Observable until a second Observable starts emitting
84+
* items.
85+
**/
86+
private static void skipUntil() {
87+
System.out.println("skipUntil");
88+
89+
List<Integer> integerList = Arrays.asList(1, 2, 3);
90+
List<Integer> integerList1 = Collections.singletonList(0);
91+
System.out.println(integerList);
92+
System.out.println(integerList1);
93+
Observable<Integer> integerObservable = Observable.fromIterable(integerList);
94+
Observable<Integer> integerObservable1 = Observable.fromIterable(integerList1);
95+
96+
System.out.println("skipUntil =====================>");
97+
98+
integerObservable.skipUntil(integerObservable1)
99+
.subscribe(System.out::println);
100+
System.out.println();
101+
}
102+
103+
/**
104+
* Mirror items emitted by an Observable until a specified condition becomes false.
105+
*
106+
**/
107+
private static void takeWhile() {
108+
System.out.println("takeWhile");
109+
110+
List<Integer> integerList = Arrays.asList(2, 4, 16, 9, 11);
111+
System.out.println(integerList);
112+
Observable<Integer> integerObservable = Observable.fromIterable(integerList);
113+
114+
System.out.println("takeWhile(x => isEven(x) =====================>");
115+
116+
integerObservable.takeWhile(Main::isEven)
117+
.subscribe(System.out::println);
118+
System.out.println();
119+
}
120+
121+
private static boolean isEven(int number) {
122+
return number % 2 == 0;
123+
}
124+
125+
/**
126+
* Apply a function to each item emitted by an Observable, sequentially, emit the
127+
* final value and terminate.
128+
**/
129+
private static void takeUntil() {
130+
System.out.println("takeUntil");
131+
132+
List<Integer> integerList = Arrays.asList(1, 2, 3, 4);
133+
List<Integer> integerList1 = Collections.singletonList(0);
134+
System.out.println(integerList);
135+
System.out.println(integerList1);
136+
Observable<Integer> integerObservable = Observable.fromIterable(integerList);
137+
Observable<Integer> integerObservable1 = Observable.fromIterable(integerList1);
138+
139+
System.out.println("takeUntil =====================>");
140+
141+
integerObservable.takeUntil(integerObservable1)
142+
.subscribe(System.out::println);
143+
System.out.println();
144+
}
145+
}

Math/src/Main.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ private static void reduce() {
6060
System.out.println(integerList);
6161
Observable<Integer> integerObservable = Observable.fromIterable(integerList);
6262

63-
System.out.println("reduce((x, y) => x * Y) =====================>");
63+
System.out.println("reduce((x, y) => x * y) =====================>");
6464

6565
integerObservable.reduce((x, y) -> x * y)
6666
.subscribe(System.out::println);

0 commit comments

Comments
 (0)