@@ -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