Package org.djutils.immutablecollections
Class ImmutableHashSet<E>
- java.lang.Object
-
- org.djutils.immutablecollections.ImmutableAbstractCollection<E>
-
- org.djutils.immutablecollections.ImmutableAbstractSet<E>
-
- org.djutils.immutablecollections.ImmutableHashSet<E>
-
- Type Parameters:
E
- the type of content of this Set
- All Implemented Interfaces:
Serializable
,Iterable<E>
,ImmutableCollection<E>
,ImmutableSet<E>
public class ImmutableHashSet<E> extends ImmutableAbstractSet<E>
An immutable wrapper for a HashSet.Copyright (c) 2016-2021 Delft University of Technology, Jaffalaan 5, 2628 BX Delft, the Netherlands. All rights reserved. See for project information https://djutils.org. The DJUTILS project is distributed under a three-clause BSD-style license, which can be found at https://djutils.org/docs/license.html.
- Author:
- Alexander Verbraeck, Peter Knoppers
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class org.djutils.immutablecollections.ImmutableAbstractCollection
copyOrWrap
-
-
Constructor Summary
Constructors Constructor Description ImmutableHashSet(Collection<? extends E> collection)
Construct a new ImmutableHashSet containing a copy of the provided collection.ImmutableHashSet(Set<E> set, Immutable copyOrWrap)
Construct a new ImmutableHashSet containing the provided set.ImmutableHashSet(ImmutableAbstractCollection<? extends E> collection)
Construct a new ImmutableHashSet containing a copy of the provided Collection.ImmutableHashSet(ImmutableAbstractSet<E> set, Immutable copyOrWrap)
Construct a new ImmutableHashSet containing the provided set.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected Set<E>
getUnderlyingCollection()
Returns the underlying collection of this immutable collection.Set<E>
toSet()
Returns a modifiable copy of this immutable set.String
toString()
Force to redefine toString.-
Methods inherited from class org.djutils.immutablecollections.ImmutableAbstractSet
contains, containsAll, containsAll, equals, forEach, hashCode, isEmpty, isWrap, iterator, parallelStream, size, spliterator, stream, toArray, toArray, toCollection
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.djutils.immutablecollections.ImmutableCollection
isCopy
-
-
-
-
Constructor Detail
-
ImmutableHashSet
public ImmutableHashSet(Collection<? extends E> collection)
Construct a new ImmutableHashSet containing a copy of the provided collection.- Parameters:
collection
- Collection<? extends E>; the collection to use for the immutable set.
-
ImmutableHashSet
public ImmutableHashSet(Set<E> set, Immutable copyOrWrap)
Construct a new ImmutableHashSet containing the provided set.- Parameters:
set
- Set<E>; the set to use for the immutable set.copyOrWrap
- COPY stores a safe, internal copy of the collection; WRAP stores a pointer to the original collection
-
ImmutableHashSet
public ImmutableHashSet(ImmutableAbstractCollection<? extends E> collection)
Construct a new ImmutableHashSet containing a copy of the provided Collection.- Parameters:
collection
- ImmutableAbstractCollection<? extends E>; the collection to use for the immutable set.
-
ImmutableHashSet
public ImmutableHashSet(ImmutableAbstractSet<E> set, Immutable copyOrWrap)
Construct a new ImmutableHashSet containing the provided set.- Parameters:
set
- ImmutableAbstractSet<E>; the set to use for the immutable set.copyOrWrap
- COPY stores a safe, internal copy of the collection; WRAP stores a pointer to the original collection
-
-
Method Detail
-
getUnderlyingCollection
protected Set<E> getUnderlyingCollection()
Returns the underlying collection of this immutable collection. In case of Immutable.WRAP, this will be the original collection. In case of IMMUTABLE.COPY, this will be the internally stored (mutable) copy of the collection.- Overrides:
getUnderlyingCollection
in classImmutableAbstractSet<E>
- Returns:
- the underlying collection of this immutable collection.
-
toSet
public final Set<E> toSet()
Returns a modifiable copy of this immutable set.- Returns:
- a modifiable copy of this immutable set.
-
-