@@ -109,17 +109,40 @@ public static List<String> getAllTraderNamesAndSortByName() {
109
109
.sorted ()
110
110
.collect (toList ());
111
111
}
112
-
112
+
113
113
public static boolean areAnyTradersFromMilan () {
114
114
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 ();
116
136
}
117
137
118
138
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 ());
124
147
}
125
148
}
0 commit comments