對學生成績進行升序排序
阿新 • • 發佈:2018-12-25
在測試類中完成如下要求
a) 將五名學生新增到ArrayList集合
b) 使用Collections.sort(List<T> list, Comparator<? super T> c)方法將學生成績從小到大進行排序
i. 使用匿名內部類
ii. 使用Lambda表示式
*/
public class Test11_Test {
public static void main(String[] args) {
// 建立一個ArrayList集合 , Student類作為泛型.
ArrayList<Student> list = new ArrayList<>();
// 將五名學生新增到集合中 - 使用匿名物件.
list.add(new Student("謝霆鋒",85));
list.add(new Student("章子怡",63));
list.add(new Student("劉亦菲",77));
list.add(new Student("黃曉明",33));
list.add(new Student("岑小村",92));
//使用Collections.sort(List<T> list, Comparator<? super T> c)方法
// 將學生成績從小到大進行排序
// 匿名內部類的寫法.
Collections.sort(list, new Comparator<Student>() {
@Override
public int compare(Student o1, Student o2) {
return o1.getGrade()-o2.getGrade();
}
});
System.out.println(list);
// 使用lambda表示式 , 簡化寫法.
Collections.sort(list,((o1, o2) -> o1.getGrade() - o2.getGrade()));
// 遍歷集合 , 打印出排序後的元素. - 使用增強for
for (Student student : list) {
System.out.println(student);
}
}
}