import java.util.ArrayList; import java.util.List; import java.util.stream.Stream; public class Teams { enum Sport {Baseball, Football,Basketball,Hockey} class athlete { public Sport game; public String name; public String year; //Frosh, Soph, Jr, Senior public int testgrade; //entrance exam grade public athlete(Sport s,String n,String y,int t){ game=s; name=n; year=y; testgrade=t; } } public static void main(String args[]) { new Teams(); } public Teams(){ athlete ss = new athlete(Sport.Baseball, "Sam Smith", "Jr", 95); athlete jj = new athlete(Sport.Basketball, "Joe Johnson", "Jr", 90); athlete rb = new athlete(Sport.Baseball,"Robert Brown", "Soph", 80); athlete bj = new athlete(Sport.Hockey, "Bob Jones", "Jr", 85); athlete jr = new athlete(Sport.Baseball, "Joe Roberts", "Senior", 65); athlete le = new athlete(Sport.Basketball,"Ed Edwards", "Soph", 70); List<athlete> allplayers = new ArrayList<>(); allplayers.add(ss);allplayers.add(jj);allplayers.add(rb); allplayers.add(bj);allplayers.add(jr);allplayers.add(le); Stream<athlete> playerstream = allplayers.stream(); Stream<athlete> baseballers = playerstream.filter((a) -> a.game==Sport.Baseball); long thecount=baseballers.count(); // int value= baseballers.mapToInt((a)-> a.testgrade).sum(); error: stream acted on or closed. /////////////////////////////////////////////////////////////////////////// int value=allplayers.stream() //A stream of athletes. .filter((a) -> a.game==Sport.Baseball) //into A stream of Baseball Players. .mapToInt((a)-> a.testgrade) // into A stream of integers. .sum(); // into the sum of the stream of integers System.out.println("The number of Baseball Players is : " +thecount+ "\nThere average entrance testgrade is : "+ (value/thecount )); ///////////////////////////////////// System.out.println("\nThe BasketBall Players are"); allplayers.stream() .filter((a) -> a.game==Sport.Basketball) .forEach((a)->System.out.println(a.name)); ///////////////////////////////////// System.out.println("\nThe BasketBall Players in order are"); allplayers.stream() .filter((a) -> a.game==Sport.Basketball) .sorted((a, b) -> a.name.compareTo(b.name)) .forEach((a)->System.out.println(a.name)); ///////////////////////////////////// System.out.println("\nThe Basketball Players again in order are"); allplayers.stream() .filter((a) -> a.game==Sport.Basketball) .sorted((a, b) -> a.name.compareTo(b.name)) .map((a)->a.name) .forEach(System.out::println); } }