Tôi chắc chắn có một lý do chính đáng, nhưng ai đó có thể vui lòng giải thích tại sao java.util.Set
giao diện thiếu get(int Index)
, hoặc bất kỳ get()
phương pháp tương tự nào không?
Có vẻ như các bộ rất tuyệt để đặt mọi thứ vào, nhưng tôi không thể tìm thấy một cách thanh lịch để lấy một vật phẩm từ nó.
Nếu tôi biết tôi muốn mục đầu tiên, tôi có thể sử dụng set.iterator().next()
, nhưng nếu không thì có vẻ như tôi phải chuyển sang Mảng để lấy một mục ở một chỉ mục cụ thể?
Các cách thích hợp để lấy dữ liệu từ một bộ là gì? (ngoài việc sử dụng một trình vòng lặp)
Tôi chắc chắn rằng thực tế là nó bị loại khỏi API có nghĩa là có lý do chính đáng để không làm điều này - ai đó có thể vui lòng khai sáng cho tôi không?
EDIT: Một số câu trả lời cực kỳ tuyệt vời ở đây, và một số ít nói "bối cảnh nhiều hơn". Kịch bản cụ thể là một thử nghiệm dbUnit, trong đó tôi có thể khẳng định một cách hợp lý rằng tập trả về từ một truy vấn chỉ có 1 mục và tôi đang cố gắng truy cập vào mục đó.
Tuy nhiên, câu hỏi có giá trị hơn nếu không có kịch bản, vì nó vẫn tập trung hơn:
Sự khác biệt giữa bộ và danh sách .
Cảm ơn tất cả các câu trả lời tuyệt vời dưới đây.