コレクションの変更不可能なメソッドが基になるコレクションのビューまたはファサードを返すと仮定します。 unmodifiableList
は基本的なリストの順序を使用し、unmodfiableSet
は順序がないので何かを行う自由が自明であるようです。Java Collections.unmodifiableCollectionは、基礎となるコレクションの順序を保持しますか?
私はLinkedHashSet
を使用していますが、順序は保持されており、基本的な順序を保持するコレクションの変更不可能なビューを公開しようとしています。 unmodifiableSet
を使用すると適切ではないようですが、私はunmodifiableList
を使用できません。私はunmodifiableCollection
が基本となるコレクションに任意の順序を使用することを保証することができません。
誰でもこの動作を定義する仕様に向けることができますか、それとも矛盾しますか?
セットは、オブジェクト構築の一環として作成され、そのコレクションは「後で」重複したエントリに影響されない挿入順序を保持する限り、私が代わりにグアバUnmodifiableSetを使用することができます。しかし、これは、セットが構築中に作成され、決して更新されない私の特定のケースをカバーするだけです。 – JustifiedAndAncient