|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object java.util.AbstractCollection
public abstract class AbstractCollection
A basic implementation of most of the methods in the Collection interface to make it easier to create a collection. To create an unmodifiable Collection, just subclass AbstractCollection and provide implementations of the iterator() and size() methods. The Iterator returned by iterator() need only provide implementations of hasNext() and next() (that is, it may throw an UnsupportedOperationException if remove() is called). To create a modifiable Collection, you must in addition provide an implementation of the add(Object) method and the Iterator returned by iterator() must provide an implementation of remove(). Other methods should be overridden if the backing data structure allows for a more efficient implementation. The precise implementation used by AbstractCollection is documented, so that subclasses can tell which methods could be implemented more efficiently.
The programmer should provide a no-argument constructor, and one that accepts another Collection, as recommended by the Collection interface. Unfortunately, there is no way to enforce this in Java.
Collection
,
AbstractSet
,
AbstractList
Constructor Summary | |
---|---|
protected |
AbstractCollection()
The main constructor, for use by subclasses. |
Method Summary | |
---|---|
boolean |
add(Object o)
Add an object to the collection (optional operation). |
boolean |
addAll(Collection c)
Add all the elements of a given collection to this collection (optional operation). |
void |
clear()
Remove all elements from the collection (optional operation). |
boolean |
contains(Object o)
Test whether this collection contains a given object. |
boolean |
containsAll(Collection c)
Tests whether this collection contains all the elements in a given collection. |
boolean |
isEmpty()
Test whether this collection is empty. |
abstract Iterator |
iterator()
Return an Iterator over this collection. |
boolean |
remove(Object o)
Remove a single instance of an object from this collection (optional operation). |
boolean |
removeAll(Collection c)
Remove from this collection all its elements that are contained in a given collection (optional operation). |
boolean |
retainAll(Collection c)
Remove from this collection all its elements that are not contained in a given collection (optional operation). |
abstract int |
size()
Return the number of elements in this collection. |
Object[] |
toArray()
Return an array containing the elements of this collection. |
Object[] |
toArray(Object[] a)
Copy the collection into a given array if it will fit, or into a dynamically created array of the same run-time type as the given array if not. |
String |
toString()
Creates a String representation of the Collection. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface java.util.Collection |
---|
equals, hashCode |
Constructor Detail |
---|
protected AbstractCollection()
Method Detail |
---|
public abstract Iterator iterator()
iterator
in interface Collection
public abstract int size()
size
in interface Collection
public boolean add(Object o)
add
in interface Collection
o
- the object to add
UnsupportedOperationException
- if the add operation is not
supported on this collection
NullPointerException
- if the collection does not support null
ClassCastException
- if the object is of the wrong type
IllegalArgumentException
- if some aspect of the object prevents
it from being addedpublic boolean addAll(Collection c)
addAll
in interface Collection
c
- the collection to add the elements of to this collection
UnsupportedOperationException
- if the add operation is not
supported on this collection
NullPointerException
- if the specified collection is null
ClassCastException
- if the type of any element in c is
not a valid type for addition.
IllegalArgumentException
- if some aspect of any element
in c prevents it being added.
NullPointerException
- if any element in c is null and this
collection doesn't allow null values.add(Object)
public void clear()
clear
in interface Collection
UnsupportedOperationException
- if the Iterator returned by
iterator does not provide an implementation of removeIterator.remove()
public boolean contains(Object o)
contains
in interface Collection
o
- the object to remove from this collection
public boolean containsAll(Collection c)
containsAll
in interface Collection
c
- the collection to test against
NullPointerException
- if the given collection is nullcontains(Object)
public boolean isEmpty()
isEmpty
in interface Collection
size()
public boolean remove(Object o)
(o == null ? e == null : o.equals(e))
, if such an element
exists. This implementation obtains an iterator over the collection
and iterates over it, testing each element for equality with the given
object. If it is equal, it is removed by the iterator's remove method
(thus this method will fail with an UnsupportedOperationException if
the Iterator's remove method does). After the first element has been
removed, true is returned; if the end of the collection is reached, false
is returned.
remove
in interface Collection
o
- the object to remove from this collection
UnsupportedOperationException
- if this collection's Iterator
does not support the remove methodIterator.remove()
public boolean removeAll(Collection c)
removeAll
in interface Collection
c
- the collection to remove the elements of
UnsupportedOperationException
- if this collection's Iterator
does not support the remove method
NullPointerException
- if the collection, c, is null.Iterator.remove()
public boolean retainAll(Collection c)
retainAll
in interface Collection
c
- the collection to retain the elements of
UnsupportedOperationException
- if this collection's Iterator
does not support the remove method
NullPointerException
- if the collection, c, is null.Iterator.remove()
public Object[] toArray()
toArray
in interface Collection
public Object[] toArray(Object[] a)
toArray
in interface Collection
a
- the array to copy into, or of the correct run-time type
NullPointerException
- if the given array is null
ArrayStoreException
- if the type of the array precludes holding
one of the elements of the Collectionpublic String toString()
toString
in class Object
Object.getClass()
,
Object.hashCode()
,
Class.getName()
,
Integer.toHexString(int)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |