Java – 71: Sắp xếp danh sách đối tượng với Comparator interface

9
2



Hướng dẫn lập trình Java từ cơ bản đến nâng cao. đọc ghi đối tượng trong Java. Hướng dẫn học lập trình java miễn phí và đầy đủ nhất trên youtube. Học lập trình, tự học lập trình qua video. Hướng dẫn sử dụng interface trong java.hướng dẫn sử dụng Comparator interface trong java. sắp xếp danh sách các đối tượng sử dụng Collections.sort() và Comparator interface. triệu thân channel-let’s grow together!

Link: lớp Student:

Lớp khác:

Nguồn: https://atfilms.info/

Xem thêm bài viết khác: https://atfilms.info/cong-nghe/

9 COMMENTS

  1. anh ơi cho em hỏi xíu là Comparator là interface
    – mà trong khi lúc anh Overide lại em nhìn thấy một loạt phương thức của Comparator
    – mà tính chất của interface là bắt buộc phải implements hết tất cả các phương thức của nó
    – câu hỏi là vậy tại sao trong trường hợp đó anh chỉ Overide lại một phương thức của nó thôi mà nó vẫn không báo lỗi ạ
    – mong anh giải đáp giúp em với ạ

  2. SortByMark có thể làm:
    public class SortByMark implements Comparator<Student>{

    @Override

    public int compare(Student o1, Student o2) {

    return Float.valueOf(o1.getStudentAVGMark()).compareTo(Float.valueOf(o2.getStudentAVGMark()));

    }

    }

  3. Sao ở phương thức SortByMark anh có return -1,1,0 mà ở SortByStudentID lại ko có return 1,-1,0 vậy a

  4. cái chổ mà return -1 , 1, 0 ấy anh có phải là khi mình lấy res = o1.getStudenAVGMark() – o2.getStudenAVGMark() chức năng của nó giống như vòng lặp đúng không ạ, tức là nó lần lượt lấy tất cả các thuộc tính AVGMark chứa trong phương thức lần lượt so sánh với điều kiện cho phù hợp chứ làm gì mà return -1, 0, 1 mà đổi chổ

  5. anh ơi ở code ở phút thứ 9 ý,nếu res=0 thì cuối cùng return 0; thì return 0 cũng là do nothing ạ=))

  6. a cho e hỏi là sao implements interface comparator mình lại override chỉ 1 phương thức mà chương trình ko báo lỗi vậy ạ. Em nghĩ phải override hết hoặc cái class đó phải là abstract chứ ạ

LEAVE A REPLY

Please enter your comment!
Please enter your name here