Câu hỏi phỏng vấn Java
Câu hỏi

Comparable interfaceComparator interface trong Java là gì? Điểm khác nhau giữa chúng?

Câu trả lời

Trong Java, ComparableComparator là hai interface được sử dụng để sắp xếp các đối tượng của các lớp do người dùng định nghĩa. Mặc dù cả hai đều được sử dụng cho mục đích sắp xếp, chúng có một số điểm khác biệt quan trọng:

Comparable Interface:

  • Mục đích: Comparable được sử dụng để định nghĩa phương thức so sánh tự nhiên của đối tượng. Một lớp chỉ cần triển khai interface này nếu tất cả các đối tượng của nó đều có thể so sánh với nhau.
  • Phương thức: Interface này chứa một phương thức duy nhất là compareTo(Object o).
  • Sử dụng: Khi một lớp triển khai Comparable, nó có nghĩa là "đối tượng này có thể so sánh với các đối tượng khác của cùng một lớp". Điều này thường được sử dụng để sắp xếp các đối tượng trong một danh sách sử dụng Collections.sort() hoặc Arrays.sort() mà không cần bất kỳ bộ so sánh bổ sung nào.
  • Ví dụ:
    public class Person implements Comparable<Person> {
        private String name;
        private int age;
    
        // Constructor, getters và setters
    
        @Override
        public int compareTo(Person other) {
            return this.age - other.age;
        }
    }

Comparator Interface:

  • Mục đích: Comparator được sử dụng khi bạn muốn sắp xếp các đối tượng theo một trật tự không tự nhiên hoặc sắp xếp các đối tượng của lớp mà bạn không k...
middle

middle

Gợi ý câu hỏi phỏng vấn

middle

Có thứ gì giống như static-class trong Java không?

middle

So sánh biến volatile và biến static trong Java?

middle

Lớp singleton trong Java là gì?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào