私は、コレクションとセットのインターフェイスをシリアル化する必要があります。 Java上のこれらのインタフェースに対して、シリアライズ可能な置換えはどれですか?"Set"と "Collection"インターフェースでSerializableの代わりになるのは何ですか?
6
A
答えて
16
セットはインターフェイスです。
を実装し、HashSetを使用します。は、シリアル化可能です。
Set内のすべてのオブジェクトがシリアライズ可能であることを確認してください。詳細Why java.util.Set is not Serializable?
PS用
。これは、HashSetのは、型チェックは、セットが直列化可能ではなく、セットのサブタイプは、シリアライズできることを知って、シリアライズし、Setを実装する、またはコレクション
1
ある任意の具象クラスを使用する必要はありませんでした。
セットはインターフェイスです。しかし、setの実装はHashSetです。これはシリアライズ可能です。
セットをインスタンス化できないため、セットをシリアル化することは期待できません。
Set st = new Set(); // illegal
setは、実際にはSerializableを実装する必要はありません。
とにかく、LinkedHashSetとTreeSetを使用できます。それらもシリアライズ可能です。
0
いくつかの一般的なもの:
--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>
関連する問題
- 1. C#XML Serializable Collection
- 2. std :: setでBOOST_FOREACHの代わりに?
- 3. Contacts.People.NOTESの代わりになるものは何ですか?
- 4. scala @SerializableとJava Serializableの違いは何ですか?
- 5. glob_tとglob(Windows)の代わりになるものは何ですか?
- 6. CollectionがCloneableおよびSerializableを拡張しないのはなぜですか?
- 7. Collectionクラスの代わりにNewEnum()でRangeオブジェクトを使う(For Eachで)
- 8. urllib.request.urlretrieveの代わりに使用するコマンドは何ですか?
- 9. framework7のjqueryの.animate()メソッドの代わりになるものは何ですか?
- 10. jetty http clientのSslSocketConnector setPort()の代わりになるものは何ですか?
- 11. 廃止予定のCanvas.getMatrix()の代わりになるものは何ですか?
- 12. モジュールActionController :: UploadedFileの代わりになるものは何ですか?
- 13. R CMD mydir build --binaryの代わりになるものは何ですか?
- 14. std :: setの代わりにstd :: unordered_setを使用する場合
- 15. svcutil.exeはxsd.exeの代わりですか?
- 16. Mootools MochaUIに代わるJqueryの代替品とは何ですか?
- 17. jQueryの$(this).parent()。parent()。find( '.active')の代わりにZepto.jsとは何ですか?
- 18. iphoneでCommonCryptoの代わりに使用する方法は何ですか?
- 19. InsertFileに代わるOpenXML SDKとは何ですか?
- 20. セッションの代わりに何を使うべきですか?
- 21. sscanfの代わりに何を使うべきですか?
- 22. spring-hibernate3.jarの代わりに何が今ですか?
- 23. LoadWithPartialName()の代わりに何を使うべきですか?
- 24. ios用にUIWebViewを使用しない場合、私の代わりとなるのは何ですか?
- 25. 薄いインターフェースと太いインターフェースの間の「細い線」とは何ですか?
- 26. このような状況でevalに代わるものは何ですか?
- 27. 流暢なインターフェースとBuilderパターンの違いは何ですか?
- 28. 流暢なインターフェースとメソッド連鎖の違いは何ですか?
- 29. computationaly-heavyクエリのfind_by_sqlに代わるものは何ですか?
- 30. JavaコレクションをインターフェースにプログラミングしてSerializableを使用できますか?
あなたはまあhttp://stackoverflow.com/questions/8314318/is-the-serialization-of-guava-immutable-collections-stable – Jayan