Có thể gộp hai hàm thành 1 được không?

public void cN4_1(ArrayList<Personnel> list) {
    Collections.sort(list, new Comparator<Personnel>() {
        @Override
        public int compare(Personnel obj1, Personnel obj2) {
            return obj1.getTen().compareToIgnoreCase(obj2.getTen());
        }
    });
    for (Personnel obj : list) {
        System.out.println(obj);
    }
}
public void cN4_2(ArrayList<Personnel> list) {
    Collections.sort(list, new Comparator<Personnel>() {
        @Override
        public int compare(Personnel obj1, Personnel obj2) {
            return obj2.getTen().compareToIgnoreCase(obj1.getTen());
        }
    });
    for (Personnel obj : list) {
        System.out.println(obj);
    }
}
2 Likes

Thêm hướng sắp xếp vào nữa thôi. Đó là dấu của phép tính.

// xuôi
return obj1.getTen().compareToIgnoreCase(obj2.getTen());

// ngược
return -obj1.getTen().compareToIgnoreCase(obj2.getTen());
// tương tự
// return -1 * obj1.getTen().compareToIgnoreCase(obj2.getTen());
7 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?