2013-03-23 35 views
8

Tại sao hai chức năng để làm điều tương tự?Sự khác biệt giữa phiếu mua hàng() và thêm() trong hàng đợi ưu tiên trong java?

Mô tả được cung cấp trong tài liệu api java tại http://docs.oracle.com/javase/7/docs/api/java/util/PriorityQueue.html giống nhau.

+0

Có một thread trên Stackoverflow với truy vấn tương tự: [Sự khác nhau giữa add và phương pháp phục vụ] [1] [1]: http://stackoverflow.com/questions/2703984/what-is- sự khác biệt giữa các-thêm-và-chào-phương pháp-trong-một-hàng đợi –

Trả lời

21

Hai chức năng đến từ hai giao diện khác nhau mà PriorityQueue cụ:

  • add() đến từ Collection.
  • offer() đến từ Queue.

Đối với một hàng đợi năng lực hạn chế, sự khác biệt là add() luôn trả true và ném một ngoại lệ nếu nó không thể thêm phần tử, trong khi offer() được phép trở về false nếu nó không thể thêm phần tử.

Tuy nhiên, điều này không áp dụng cho PriorityQueue; hai hàm đồng nghĩa.

Các vấn đề liên quan