Tôi phải sắp xếp từng giao diện Bộ sưu tập và Đặt. Lựa chọn thay thế Serializable tốt nhất cho các giao diện trên Java là gì?Thay thế Serializable tốt nhất cho giao diện "Set" và "Collection" là gì?
6
A
Trả lời
16
Đặt là giao diện .
Sử dụng HashSet là triển khai Đặt và HashSets được nối tiếp.
Chỉ cần chắc chắn rằng tất cả các đối tượng trong Tập là có thể tuần tự hóa.
Để biết thêm thông tin Why java.util.Set is not Serializable?
PS. Nó không phải là một HashSet sử dụng bất kỳ lớp bê tông nào có thể tuần tự hóa và triển khai Set, hoặc Collection
1
Kiểm tra loại biết rằng bộ không thể tuần tự hóa được, nhưng một loại phụ có thể được tuần tự hóa.
Đặt là Giao diện. Nhưng triển khai tập hợp là HashSet. Đây là serializable.
Bạn sẽ không muốn sắp xếp một bộ vì Tập hợp không thể được khởi tạo.
Set st = new Set(); // illegal
Vì vậy, thiết lập không thực sự cần phải triển khai Serializable.
Dù sao, bạn có thể sử dụng LinkedHashSet và TreeSet. Đó cũng là Serializable.
0
Một số những điểm chung:
--HashSet:
All Implemented Interfaces:
Serializable, Cloneable, Iterable<E>, Collection<E>, Set<E>
--TreeSet:
All Implemented Interfaces:
Serializable, Cloneable, Iterable<E>, Collection<E>, NavigableSet<E>,
Set<E>, SortedSet<E>
--ArrayList:
All Implemented Interfaces:
Serializable, Cloneable, Iterable<E>, Collection<E>, List<E>, RandomAccess
--LinkedList:
All Implemented Interfaces:
Serializable, Cloneable, Iterable<E>, Collection<E>, List<E>, Queue<E>
Các vấn đề liên quan
- 1. Lựa chọn thay thế duyên dáng nhất cho giao diện không đổi là gì?
- 2. khi nào sử dụng Set vs. Collection?
- 3. Tại sao giao diện không [Serializable]?
- 4. Cách tốt nhất để triển khai máy trạng thái giao diện người dùng là gì?
- 5. Cách tốt nhất để sắp xếp một mảng dựa trên giao diện trong WCF là gì?
- 6. Thư viện giao diện người dùng tốt nhất cho PHP
- 7. Cách tốt nhất để lập tài liệu giao diện WCF là gì?
- 8. Cách tốt nhất để truy cập các giao diện COM từ máy chủ J2EE là gì?
- 9. Thay thế cho phpUnderControl - là nó tốt nhất?
- 10. Cách tốt nhất để chạy lệnh shell từ giao diện dựa trên web là gì?
- 11. Khung PHP là gì và khung tốt nhất là gì?
- 12. Cách tốt nhất để có được giao diện điều khiển-đầu vào trong Java là gì?
- 13. Một số mẫu giao diện JavaScript/AJAX tốt cho các trang web là gì?
- 14. lợi thế của việc sử dụng giao diện là gì
- 15. Mục đích của giao diện điểm đánh dấu là gì?
- 16. Khung JavaScript nhẹ tốt nhất là gì?
- 17. Rhino Mocks stubs và mocks chỉ tốt cho giao diện?
- 18. Thay thế tốt nhất cho thư viện trong Android là gì?
- 19. Giao diện thông thạo là gì?
- 20. Cách tốt nhất để giao tiếp C# và Java là gì?
- 21. Giải pháp thay thế mới nhất và tuyệt vời nhất cho Flash là gì?
- 22. cách tốt nhất để cung cấp một AutoMappingOverride cho một giao diện trong automapper fluentnhibernate
- 23. giao diện tĩnh trong java là gì?
- 24. Giao diện cục bộ/từ xa và không có giao diện trong EJB là gì?
- 25. Giao diện người dùng thay thế Couchbase
- 26. Thay thế tốt nhất cho typedef cho mẫu chức năng?
- 27. Chữ ký tốt nhất cho clone() trong C++ là gì?
- 28. Đại diện giá trị tốt nhất cho boolean trong DICOM là gì?
- 29. Giao diện gọi lại trong Java là gì?
- 30. giao thức mở tốt nhất cho phần mềm phòng trò chuyện là gì?
Bạn đang tìm kiếm một số điều như http://stackoverflow.com/questions/8314318/is-the-serialization-of-guava-immutable-collections-stable – Jayan