Class LongHashSet
- java.lang.Object
-
- org.eclipse.collections.impl.primitive.AbstractLongIterable
-
- org.eclipse.collections.impl.set.primitive.AbstractLongSet
-
- org.eclipse.collections.impl.set.mutable.primitive.LongHashSet
-
- All Implemented Interfaces:
java.io.Externalizable,java.io.Serializable,MutableLongCollection,LongIterable,PrimitiveIterable,LongSet,MutableLongSet
public class LongHashSet extends AbstractLongSet implements MutableLongSet, java.io.Externalizable
This file was automatically generated from template file primitiveHashSet.stg.- Since:
- 3.0.
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classLongHashSet.ImmutableLongHashSetprivate classLongHashSet.InternalLongIterator
-
Field Summary
Fields Modifier and Type Field Description private static intCACHE_LINE_SIZEprivate booleancopyOnWriteprivate static intDEFAULT_INITIAL_CAPACITYprivate static longEMPTYprivate static intINITIAL_LINEAR_PROBEprivate static intKEY_SIZEprivate intoccupiedWithDataprivate intoccupiedWithSentinelsprivate static longREMOVEDprivate static longserialVersionUIDprivate long[]tableprivate intzeroToThirtyOneprivate intzeroToThirtyOneOccupied
-
Constructor Summary
Constructors Constructor Description LongHashSet()LongHashSet(int initialCapacity)LongHashSet(long... elements)LongHashSet(LongIterable elements)LongHashSet(LongHashSet set)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description booleanadd(long element)booleanaddAll(long... source)booleanaddAll(LongIterable source)protected voidallocateTable(int sizeToAllocate)booleanallSatisfy(LongPredicate predicate)Returns true if all of the elements in the LongIterable return true for the specified predicate, otherwise returns false.booleananySatisfy(LongPredicate predicate)Returns true if any of the elements in the LongIterable return true for the specified predicate, otherwise returns false.voidappendString(java.lang.Appendable appendable, java.lang.String start, java.lang.String separator, java.lang.String end)Prints a string representation of this collection onto the givenAppendable.MutableLongSetasSynchronized()MutableLongSetasUnmodifiable()MutableSet<java.lang.Long>boxed()RichIterable<LongIterable>chunk(int size)Partitions elements in fixed size chunks.voidclear()<V> MutableSet<V>collect(LongToObjectFunction<? extends V> function)Returns a new collection with the results of applying the specified function on each element of the source collection.<V,R extends java.util.Collection<V>>
Rcollect(LongToObjectFunction<? extends V> function, R target)Same asLongIterable.collect(LongToObjectFunction), only the results are added to the target Collection.voidcompact()Deprecated.since 12.0 - UsetrimToSize()insteadbooleancontains(long value)Returns true if the value is contained in the LongIterable, and false if it is not.private voidcopyTable()intcount(LongPredicate predicate)Returns a count of the number of elements in the LongIterable that return true for the specified predicate.longdetectIfNone(LongPredicate predicate, long ifNone)voideach(LongProcedure procedure)A synonym for forEach.LongSetfreeze()Returns a frozen copy of this set.inthashCode()Follows the same general contract asSet.hashCode().<T> TinjectInto(T injectedValue, ObjectLongToObjectFunction<? super T,? extends T> function)private static booleanisBetweenZeroAndThirtyOne(long value)private static booleanisNonSentinel(long value)MutableLongIteratorlongIterator()Returns a primitive iterator that can be used to iterate over the LongIterable in an imperative style.private intmask(int spread)longmax()private intmaxOccupiedWithData()longmin()LongHashSetnewEmpty()Creates a new empty LongHashSet.static LongHashSetnewSet(LongIterable source)static LongHashSetnewSetWith(long... source)(package private) intprobe(long element)(package private) intprobeThree(long element, int removedIndex)(package private) intprobeTwo(long element, int removedIndex)voidreadExternal(java.io.ObjectInput in)private voidrehash(int newCapacity)private voidrehashAndGrow()LongHashSetreject(LongPredicate predicate)Returns a new LongIterable with all of the elements in the LongIterable that return false for the specified predicate.<R extends MutableLongCollection>
Rreject(LongPredicate predicate, R target)Same asLongIterable.reject(LongPredicate), only the results are added to the target MutableLongCollection.booleanremove(long value)booleanremoveAll(long... source)booleanremoveAll(LongIterable source)private booleanremoveZeroToThirtyOne(long value)booleanretainAll(long... source)booleanretainAll(LongIterable source)LongHashSetselect(LongPredicate predicate)Returns a new LongIterable with all of the elements in the LongIterable that return true for the specified predicate.<R extends MutableLongCollection>
Rselect(LongPredicate predicate, R target)Same asLongIterable.select(LongPredicate), only the results are added to the target MutableLongCollection.intsize()Returns the number of items in this iterable.private intsmallestPowerOfTwoGreaterThan(int n)(package private) intspreadAndMask(long element)(package private) intspreadTwoAndMask(long element)longsum()long[]toArray()Converts the LongIterable to a primitive long array.long[]toArray(long[] array)Converts the LongIterable to a primitive long array.ImmutableLongSettoImmutable()Returns an immutable copy of this set.booleantrimToSize()LongHashSetwith(long element)LongHashSetwithAll(LongIterable elements)LongHashSetwithout(long element)LongHashSetwithoutAll(LongIterable elements)voidwriteExternal(java.io.ObjectOutput out)-
Methods inherited from class org.eclipse.collections.impl.set.primitive.AbstractLongSet
cartesianProduct, equals
-
Methods inherited from class org.eclipse.collections.impl.primitive.AbstractLongIterable
asLazy, average, maxIfEmpty, median, minIfEmpty, toBag, toList, toSet, toSortedArray, toSortedList, toString
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.eclipse.collections.api.LongIterable
asLazy, average, averageIfEmpty, collectBoolean, collectByte, collectChar, collectDouble, collectFloat, collectInt, collectLong, collectShort, containsAll, containsAll, containsAny, containsAny, containsNone, containsNone, flatCollect, forEach, injectIntoBoolean, injectIntoByte, injectIntoChar, injectIntoDouble, injectIntoFloat, injectIntoInt, injectIntoLong, injectIntoShort, maxIfEmpty, median, medianIfEmpty, minIfEmpty, noneSatisfy, reduce, reduceIfEmpty, summaryStatistics, toBag, toList, toSet, toSortedArray, toSortedList, toSortedList, toSortedListBy, toSortedListBy
-
Methods inherited from interface org.eclipse.collections.api.set.primitive.LongSet
cartesianProduct, equals, isProperSubsetOf, isSubsetOf, tap
-
Methods inherited from interface org.eclipse.collections.api.collection.primitive.MutableLongCollection
removeIf
-
Methods inherited from interface org.eclipse.collections.api.set.primitive.MutableLongSet
difference, intersect, symmetricDifference, tap, union
-
Methods inherited from interface org.eclipse.collections.api.PrimitiveIterable
appendString, appendString, isEmpty, makeString, makeString, makeString, notEmpty, toString
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
DEFAULT_INITIAL_CAPACITY
private static final int DEFAULT_INITIAL_CAPACITY
- See Also:
- Constant Field Values
-
EMPTY
private static final long EMPTY
- See Also:
- Constant Field Values
-
REMOVED
private static final long REMOVED
- See Also:
- Constant Field Values
-
CACHE_LINE_SIZE
private static final int CACHE_LINE_SIZE
- See Also:
- Constant Field Values
-
KEY_SIZE
private static final int KEY_SIZE
- See Also:
- Constant Field Values
-
INITIAL_LINEAR_PROBE
private static final int INITIAL_LINEAR_PROBE
- See Also:
- Constant Field Values
-
table
private long[] table
-
occupiedWithData
private int occupiedWithData
-
occupiedWithSentinels
private int occupiedWithSentinels
-
zeroToThirtyOne
private int zeroToThirtyOne
-
zeroToThirtyOneOccupied
private int zeroToThirtyOneOccupied
-
copyOnWrite
private transient boolean copyOnWrite
-
-
Constructor Detail
-
LongHashSet
public LongHashSet()
-
LongHashSet
public LongHashSet(int initialCapacity)
-
LongHashSet
public LongHashSet(long... elements)
-
LongHashSet
public LongHashSet(LongIterable elements)
-
LongHashSet
public LongHashSet(LongHashSet set)
-
-
Method Detail
-
boxed
public MutableSet<java.lang.Long> boxed()
- Specified by:
boxedin interfaceMutableLongSet
-
smallestPowerOfTwoGreaterThan
private int smallestPowerOfTwoGreaterThan(int n)
-
newSet
public static LongHashSet newSet(LongIterable source)
-
newSetWith
public static LongHashSet newSetWith(long... source)
-
isBetweenZeroAndThirtyOne
private static boolean isBetweenZeroAndThirtyOne(long value)
-
hashCode
public int hashCode()
Description copied from interface:LongSetFollows the same general contract asSet.hashCode().- Specified by:
hashCodein interfaceLongSet- Specified by:
hashCodein classAbstractLongSet
-
size
public int size()
Description copied from interface:PrimitiveIterableReturns the number of items in this iterable.- Specified by:
sizein interfacePrimitiveIterable
-
appendString
public void appendString(java.lang.Appendable appendable, java.lang.String start, java.lang.String separator, java.lang.String end)Description copied from interface:PrimitiveIterablePrints a string representation of this collection onto the givenAppendable. Prints the string returned byPrimitiveIterable.makeString(String, String, String).- Specified by:
appendStringin interfacePrimitiveIterable
-
add
public boolean add(long element)
- Specified by:
addin interfaceMutableLongCollection
-
addAll
public boolean addAll(long... source)
- Specified by:
addAllin interfaceMutableLongCollection
-
addAll
public boolean addAll(LongIterable source)
- Specified by:
addAllin interfaceMutableLongCollection
-
remove
public boolean remove(long value)
- Specified by:
removein interfaceMutableLongCollection
-
removeZeroToThirtyOne
private boolean removeZeroToThirtyOne(long value)
-
removeAll
public boolean removeAll(LongIterable source)
- Specified by:
removeAllin interfaceMutableLongCollection
-
removeAll
public boolean removeAll(long... source)
- Specified by:
removeAllin interfaceMutableLongCollection
-
retainAll
public boolean retainAll(LongIterable source)
- Specified by:
retainAllin interfaceMutableLongCollection- See Also:
Collection.retainAll(Collection)
-
retainAll
public boolean retainAll(long... source)
- Specified by:
retainAllin interfaceMutableLongCollection- See Also:
Collection.retainAll(Collection)
-
clear
public void clear()
- Specified by:
clearin interfaceMutableLongCollection
-
with
public LongHashSet with(long element)
- Specified by:
within interfaceMutableLongCollection- Specified by:
within interfaceMutableLongSet
-
without
public LongHashSet without(long element)
- Specified by:
withoutin interfaceMutableLongCollection- Specified by:
withoutin interfaceMutableLongSet
-
withAll
public LongHashSet withAll(LongIterable elements)
- Specified by:
withAllin interfaceMutableLongCollection- Specified by:
withAllin interfaceMutableLongSet
-
withoutAll
public LongHashSet withoutAll(LongIterable elements)
- Specified by:
withoutAllin interfaceMutableLongCollection- Specified by:
withoutAllin interfaceMutableLongSet
-
asUnmodifiable
public MutableLongSet asUnmodifiable()
- Specified by:
asUnmodifiablein interfaceMutableLongCollection- Specified by:
asUnmodifiablein interfaceMutableLongSet
-
asSynchronized
public MutableLongSet asSynchronized()
- Specified by:
asSynchronizedin interfaceMutableLongCollection- Specified by:
asSynchronizedin interfaceMutableLongSet
-
toImmutable
public ImmutableLongSet toImmutable()
Description copied from interface:MutableLongSetReturns an immutable copy of this set.- Specified by:
toImmutablein interfaceLongSet- Specified by:
toImmutablein interfaceMutableLongCollection- Specified by:
toImmutablein interfaceMutableLongSet
-
longIterator
public MutableLongIterator longIterator()
Description copied from interface:LongIterableReturns a primitive iterator that can be used to iterate over the LongIterable in an imperative style.- Specified by:
longIteratorin interfaceLongIterable- Specified by:
longIteratorin interfaceMutableLongCollection
-
toArray
public long[] toArray()
Description copied from interface:LongIterableConverts the LongIterable to a primitive long array.- Specified by:
toArrayin interfaceLongIterable
-
toArray
public long[] toArray(long[] array)
Description copied from interface:LongIterableConverts the LongIterable to a primitive long array. If the collection fits into the provided array it is used to store its elements and is returned from the method, otherwise a new array of the appropriate size is allocated and returned. If the iterable is empty, the target array is returned unchanged.- Specified by:
toArrayin interfaceLongIterable
-
contains
public boolean contains(long value)
Description copied from interface:LongIterableReturns true if the value is contained in the LongIterable, and false if it is not.- Specified by:
containsin interfaceLongIterable
-
each
public void each(LongProcedure procedure)
Description copied from interface:LongIterableA synonym for forEach.- Specified by:
eachin interfaceLongIterable- Since:
- 7.0.
-
select
public LongHashSet select(LongPredicate predicate)
Description copied from interface:LongIterableReturns a new LongIterable with all of the elements in the LongIterable that return true for the specified predicate.- Specified by:
selectin interfaceLongIterable- Specified by:
selectin interfaceLongSet- Specified by:
selectin interfaceMutableLongCollection- Specified by:
selectin interfaceMutableLongSet
-
select
public <R extends MutableLongCollection> R select(LongPredicate predicate, R target)
Description copied from interface:LongIterableSame asLongIterable.select(LongPredicate), only the results are added to the target MutableLongCollection.- Specified by:
selectin interfaceLongIterable- Since:
- 8.1.
-
reject
public LongHashSet reject(LongPredicate predicate)
Description copied from interface:LongIterableReturns a new LongIterable with all of the elements in the LongIterable that return false for the specified predicate.- Specified by:
rejectin interfaceLongIterable- Specified by:
rejectin interfaceLongSet- Specified by:
rejectin interfaceMutableLongCollection- Specified by:
rejectin interfaceMutableLongSet
-
reject
public <R extends MutableLongCollection> R reject(LongPredicate predicate, R target)
Description copied from interface:LongIterableSame asLongIterable.reject(LongPredicate), only the results are added to the target MutableLongCollection.- Specified by:
rejectin interfaceLongIterable- Since:
- 8.1.
-
collect
public <V> MutableSet<V> collect(LongToObjectFunction<? extends V> function)
Description copied from interface:LongIterableReturns a new collection with the results of applying the specified function on each element of the source collection. This method is also commonly called transform or map.- Specified by:
collectin interfaceLongIterable- Specified by:
collectin interfaceLongSet- Specified by:
collectin interfaceMutableLongCollection- Specified by:
collectin interfaceMutableLongSet
-
collect
public <V,R extends java.util.Collection<V>> R collect(LongToObjectFunction<? extends V> function, R target)
Description copied from interface:LongIterableSame asLongIterable.collect(LongToObjectFunction), only the results are added to the target Collection.- Specified by:
collectin interfaceLongIterable- Since:
- 8.1.
-
detectIfNone
public long detectIfNone(LongPredicate predicate, long ifNone)
- Specified by:
detectIfNonein interfaceLongIterable
-
count
public int count(LongPredicate predicate)
Description copied from interface:LongIterableReturns a count of the number of elements in the LongIterable that return true for the specified predicate.- Specified by:
countin interfaceLongIterable
-
anySatisfy
public boolean anySatisfy(LongPredicate predicate)
Description copied from interface:LongIterableReturns true if any of the elements in the LongIterable return true for the specified predicate, otherwise returns false.- Specified by:
anySatisfyin interfaceLongIterable
-
allSatisfy
public boolean allSatisfy(LongPredicate predicate)
Description copied from interface:LongIterableReturns true if all of the elements in the LongIterable return true for the specified predicate, otherwise returns false.- Specified by:
allSatisfyin interfaceLongIterable
-
sum
public long sum()
- Specified by:
sumin interfaceLongIterable
-
max
public long max()
- Specified by:
maxin interfaceLongIterable
-
min
public long min()
- Specified by:
minin interfaceLongIterable
-
freeze
public LongSet freeze()
Description copied from interface:MutableLongSetReturns a frozen copy of this set. A frozen copy is the same thing as an immutable copy without safe-publish guarantees.- Specified by:
freezein interfaceLongSet- Specified by:
freezein interfaceMutableLongSet
-
writeExternal
public void writeExternal(java.io.ObjectOutput out) throws java.io.IOException- Specified by:
writeExternalin interfacejava.io.Externalizable- Throws:
java.io.IOException
-
readExternal
public void readExternal(java.io.ObjectInput in) throws java.io.IOException- Specified by:
readExternalin interfacejava.io.Externalizable- Throws:
java.io.IOException
-
injectInto
public <T> T injectInto(T injectedValue, ObjectLongToObjectFunction<? super T,? extends T> function)- Specified by:
injectIntoin interfaceLongIterable
-
chunk
public RichIterable<LongIterable> chunk(int size)
Description copied from interface:LongIterablePartitions elements in fixed size chunks.- Specified by:
chunkin interfaceLongIterable- Parameters:
size- the number of elements per chunk- Returns:
- A
RichIterablecontainingLongIterables of sizesize, except the last will be truncated if the elements don't divide evenly.
-
newEmpty
public LongHashSet newEmpty()
Creates a new empty LongHashSet.- Specified by:
newEmptyin interfaceMutableLongCollection- Specified by:
newEmptyin interfaceMutableLongSet- Since:
- 9.2.
-
trimToSize
public boolean trimToSize()
- Since:
- 12.0
-
compact
@Deprecated public void compact()
Deprecated.since 12.0 - UsetrimToSize()insteadRehashes every element in the set into a new backing table of the smallest possible size and eliminating removed sentinels.
-
rehashAndGrow
private void rehashAndGrow()
-
rehash
private void rehash(int newCapacity)
-
allocateTable
protected void allocateTable(int sizeToAllocate)
-
probe
int probe(long element)
-
probeTwo
int probeTwo(long element, int removedIndex)
-
probeThree
int probeThree(long element, int removedIndex)
-
spreadAndMask
int spreadAndMask(long element)
-
spreadTwoAndMask
int spreadTwoAndMask(long element)
-
mask
private int mask(int spread)
-
copyTable
private void copyTable()
-
maxOccupiedWithData
private int maxOccupiedWithData()
-
isNonSentinel
private static boolean isNonSentinel(long value)
-
-