Skip to content

Commit c164dff

Browse files
committed
More examples added to streams
1 parent aabf64f commit c164dff

File tree

1 file changed

+30
-7
lines changed

1 file changed

+30
-7
lines changed

src/me/ramswaroop/java8/Streams.java

+30-7
Original file line numberDiff line numberDiff line change
@@ -109,17 +109,40 @@ public static List<String> getAllTraderNamesAndSortByName() {
109109
.sorted()
110110
.collect(toList());
111111
}
112-
112+
113113
public static boolean areAnyTradersFromMilan() {
114114
return transactions.stream()
115-
.anyMatch(t -> t.getTrader().getCity().equals("Milan"));
115+
.anyMatch(t -> "Milan".equals(t.getTrader().getCity()));
116+
}
117+
118+
public static Integer[] getAllTransValuesFromTradersInCambridge() {
119+
return transactions.stream()
120+
.filter(t -> "Cambridge".equals(t.getTrader().getCity()))
121+
.map(Transaction::getValue)
122+
.toArray(Integer[]::new);
123+
}
124+
125+
public static int findHighestTransactionValue() {
126+
return transactions.stream()
127+
.map(Transaction::getValue)
128+
.reduce((t1, t2) -> (t1 > t2) ? t1 : t2) // can replace with .reduce(Integer::max)
129+
.get();
130+
}
131+
132+
public static Transaction getSmallestTransaction() {
133+
return transactions.stream()
134+
.reduce((t1, t2) -> t1.getValue() < t2.getValue() ? t1 : t2)
135+
.get();
116136
}
117137

118138
public static void main(String[] a) {
119-
System.out.println(getTransactionsIn2011SortedByValue());
120-
System.out.println(findUniqueCities());
121-
System.out.println(getAllTradersFromCambridgeAndSortByName());
122-
System.out.println(getAllTraderNamesAndSortByName());
123-
System.out.println(areAnyTradersFromMilan());
139+
System.out.println("1: " + getTransactionsIn2011SortedByValue());
140+
System.out.println("2: " + findUniqueCities());
141+
System.out.println("3: " + getAllTradersFromCambridgeAndSortByName());
142+
System.out.println("4: " + getAllTraderNamesAndSortByName());
143+
System.out.println("5: " + areAnyTradersFromMilan());
144+
System.out.println("6: " + Arrays.asList(getAllTransValuesFromTradersInCambridge()));
145+
System.out.println("7: " + findHighestTransactionValue());
146+
System.out.println("8: " + getSmallestTransaction());
124147
}
125148
}

0 commit comments

Comments
 (0)