javaの問題で分かりません。
javaの問題で分かりません。 以下のプログラム(ExamSort.java)をもとにラムダ式を用いて並び替えを行うプログラム(ExamSortLamb)を作成しなさい。また、コレクションの表示にforEachメソッドを用いること。 Examクラスの内容が異なるのでExamSortLamb.javaではExamクラスにcomparableを実装しない。それに伴い、compareToメソッドのオーバライドも不要となる。 import java.util.ArrayList; import java.util.Collections; class Exam implements Comparable<Exam>{ String name; int eng,math,lang; Exam(String name,int eng,int math,int lang){ this.name = name; this.eng = eng; this.math = math; this.lang = lang; } int calcSum(){ return eng+math+lang; } public int compareTo(Exam e){ return e.calcSum() - this.calcSum(); } } public class ExamSort{ public static void main(String[] args){ ArrayList<Exam> examList = new ArrayList<Exam>(); examList.add(new Exam("太郎", 100, 90, 80)); examList.add(new Exam("花子", 95 , 70, 100)); examList.add(new Exam("次郎", 90, 80, 85)); examList.add(new Exam("風子", 85, 100, 75)); Collections.sort(examList); for(Exam e: examList){ System.out.println(e.name+":"+e.calcSum()); } } } というものですわかる方いましたらよろしくお願いします。
Java・33閲覧・25