it.unimi.dsi.fastutil.objects
Class AbstractReferenceCollection<K>

java.lang.Object
  extended by java.util.AbstractCollection<K>
      extended by it.unimi.dsi.fastutil.objects.AbstractReferenceCollection<K>
All Implemented Interfaces:
ObjectIterable<K>, ReferenceCollection<K>, Iterable<K>, Collection<K>
Direct Known Subclasses:
AbstractByte2ReferenceSortedMap.ValuesCollection, AbstractChar2ReferenceSortedMap.ValuesCollection, AbstractDouble2ReferenceSortedMap.ValuesCollection, AbstractFloat2ReferenceSortedMap.ValuesCollection, AbstractInt2ReferenceSortedMap.ValuesCollection, AbstractLong2ReferenceSortedMap.ValuesCollection, AbstractObject2ReferenceSortedMap.ValuesCollection, AbstractReference2ReferenceSortedMap.ValuesCollection, AbstractReferenceBigList, AbstractReferenceList, AbstractReferenceSet, AbstractShort2ReferenceSortedMap.ValuesCollection, ReferenceCollections.EmptyCollection, ReferenceCollections.IterableCollection

public abstract class AbstractReferenceCollection<K>
extends AbstractCollection<K>
implements ReferenceCollection<K>

An abstract class providing basic methods for collections implementing a type-specific interface.

In particular, this class provide iterator(), add(), AbstractCollection.remove(Object) and AbstractCollection.contains(Object) methods that just call the type-specific counterpart.


Constructor Summary
protected AbstractReferenceCollection()
           
 
Method Summary
 boolean add(K k)
           
 boolean addAll(Collection<? extends K> c)
          Adds all elements of the given collection to this collection.
 boolean containsAll(Collection<?> c)
          Checks whether this collection contains all elements from the given collection.
 boolean isEmpty()
           
abstract  ObjectIterator<K> iterator()
          Returns a type-specific iterator on the elements of this collection.
 ObjectIterator<K> objectIterator()
          Deprecated. 
 boolean removeAll(Collection<?> c)
          Remove from this collection all elements in the given collection.
 boolean retainAll(Collection<?> c)
          Retains in this collection only elements from the given collection.
 Object[] toArray()
           
<T> T[]
toArray(T[] a)
          Returns an containing the items of this collection; the runtime type of the returned array is that of the specified array.
 String toString()
           
 
Methods inherited from class java.util.AbstractCollection
clear, contains, remove, size
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.Collection
clear, contains, equals, hashCode, remove, size
 

Constructor Detail

AbstractReferenceCollection

protected AbstractReferenceCollection()
Method Detail

toArray

public Object[] toArray()
Specified by:
toArray in interface Collection<K>
Overrides:
toArray in class AbstractCollection<K>

toArray

public <T> T[] toArray(T[] a)
Description copied from interface: ReferenceCollection
Returns an containing the items of this collection; the runtime type of the returned array is that of the specified array.

Warning: Note that, contrarily to Collection.toArray(Object[]), this methods just writes all elements of this collection: no special value will be added after the last one.

Specified by:
toArray in interface ReferenceCollection<K>
Specified by:
toArray in interface Collection<K>
Overrides:
toArray in class AbstractCollection<K>
Parameters:
a - if this array is big enough, it will be used to store this collection.
Returns:
a primitive type array containing the items of this collection.
See Also:
Collection.toArray(Object[])

addAll

public boolean addAll(Collection<? extends K> c)
Adds all elements of the given collection to this collection.

Specified by:
addAll in interface Collection<K>
Overrides:
addAll in class AbstractCollection<K>
Parameters:
c - a collection.
Returns:
true if this collection changed as a result of the call.

add

public boolean add(K k)
Specified by:
add in interface Collection<K>
Overrides:
add in class AbstractCollection<K>

objectIterator

@Deprecated
public ObjectIterator<K> objectIterator()
Deprecated. 

Delegates to the new covariantly stronger generic method.

Specified by:
objectIterator in interface ReferenceCollection<K>
See Also:
ReferenceCollection.iterator()

iterator

public abstract ObjectIterator<K> iterator()
Description copied from interface: ReferenceCollection
Returns a type-specific iterator on the elements of this collection.

Note that this specification strengthens the one given in Iterable.iterator(), which was already strengthened in the corresponding type-specific class, but was weakened by the fact that this interface extends Collection.

Specified by:
iterator in interface ObjectIterable<K>
Specified by:
iterator in interface ReferenceCollection<K>
Specified by:
iterator in interface Iterable<K>
Specified by:
iterator in interface Collection<K>
Specified by:
iterator in class AbstractCollection<K>
Returns:
a type-specific iterator on the elements of this collection.

containsAll

public boolean containsAll(Collection<?> c)
Checks whether this collection contains all elements from the given collection.

Specified by:
containsAll in interface Collection<K>
Overrides:
containsAll in class AbstractCollection<K>
Parameters:
c - a collection.
Returns:
true if this collection contains all elements of the argument.

retainAll

public boolean retainAll(Collection<?> c)
Retains in this collection only elements from the given collection.

Specified by:
retainAll in interface Collection<K>
Overrides:
retainAll in class AbstractCollection<K>
Parameters:
c - a collection.
Returns:
true if this collection changed as a result of the call.

removeAll

public boolean removeAll(Collection<?> c)
Remove from this collection all elements in the given collection. If the collection is an instance of this class, it uses faster iterators.

Specified by:
removeAll in interface Collection<K>
Overrides:
removeAll in class AbstractCollection<K>
Parameters:
c - a collection.
Returns:
true if this collection changed as a result of the call.

isEmpty

public boolean isEmpty()
Specified by:
isEmpty in interface Collection<K>
Overrides:
isEmpty in class AbstractCollection<K>

toString

public String toString()
Overrides:
toString in class AbstractCollection<K>


Copyright © 2011. All Rights Reserved.