Overview | Package | Class | Tree | Deprecated | Index | Help
| Oracle Application Development Framework Model and Business Components Java API Reference 10g Release 3 (10.1.3) B16005-01
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## oracle.jbo.server.java.util
Class ArrayList

`java.lang.Object
oracle.jbo.server.java.util.AbstractCollection
oracle.jbo.server.java.util.AbstractList
oracle.jbo.server.java.util.ArrayList`

All Implemented Interfaces:
  java.lang.Cloneable, Collection, List, java.io.Serializable

public class ArrayList
extends AbstractList
implements List, java.lang.Cloneable, java.io.Serializable

Resizable-array implementation of the List interface. Implements all optional List operations, and permits all elements, including null. In addition to implementing the List interface, ArrayList provides methods to manipulate the size of the array that is used internally to store the List. (Arrayist is roughly equivalent to Vector, except that it is unsynchronized.)

The size, isEmpty, get, set, clear, iterator, and listIterator operations run in constant time. The add() operation runs in constant time unless it causes the ArrayList to exceed its capacity, in which case it runs in linear time. All of the other operations run in linear time (roughly speaking). The constant factor is low compared to that for LinkedList.

Each ArrayList has a capacity and a capacityIncrement. The `capacity` is the size of the array used to store the elements in the List. It is always at least as large as the List size; it is usually larger because as components are added to the ArrayList, the ArrayList's storage increases in chunks the size of its capacityIncrement. (The capacityIncrement does not change over the lifetime of the ArrayList.) An application can increase the capacity of an ArrayList before inserting a large number of components; this reduces the amount of incremental reallocation.

Note that this implementation is not synchronized. If multiple threads access an ArrayList concurrently, and at least one of the threads modifies the ArrayList structurally, it must be synchronized externally. (A structural modification is any operation that adds or deletes one or more elements, or explicitly resizes the backing array; merely setting the value of an element is not a structural modification.) This is typically accomplished by synchronizing on some object that naturally encapsulates the ArrayList. If no such object exists, the ArrayList should be "wrapped" using the Collections.synchronizedSet method. This is best done at creation time, to prevent accidental unsynchronized access to the ArrayList:

            List list = Collections.synchronizedList(new ArrayList(...));

The Iterators returned by ArrayList's iterator and listIterator methods are fail-fast: if the ArrayList is structurally modified at any time after the Iterator is created, in any way except through the Iterator's own remove or add methods, the Iterator will throw a ConcurrentModificationException. Thus, in the face of concurrent modification, the Iterator fails quickly and cleanly, rather than risking arbitrary, non-deterministic behavior at an undetermined time in the future.

Since:
  JDK1.2
See Also:
  `Collection`, `List`, `LinkedList`, `Vector`, `Collections.SynchronizedList`, Serialized Form

Field Summary

Fields inherited from class oracle.jbo.server.java.util.AbstractList
`modCount`

Constructor Summary
`ArrayList()` Constructs an empty ArrayList.
`ArrayList(Collection c)` Constructs an ArrayList containing the elements of the specified Collection, in the order they are returned by the Collection's iterator.
`ArrayList(int initialCapacity)` Constructs an empty ArrayList with the specified initial capacity.
`ArrayList(int initialCapacity, int capacityIncrement)` Constructs an empty ArrayList with the specified initial capacity and capacity increment.

Method Summary
`void` | `add(int index, java.lang.Object element)` Inserts the specified element at the specified position in this ArrayList.
`boolean` | `add(java.lang.Object o)` Appends the specified element to the end of this ArrayList.
`boolean` | `addAll(Collection c)` Appends all of the elements in the specified Collection to the end of this this ArrayList, in the order that they are returned by the specified Collection's Iterator.
`boolean` | `addAll(int index, Collection c)` Inserts all of the elements in the specified Collection into this ArrayList, starting at the specified position.
`void` | `clear()` Removes all of the elements from this ArrayList.
`java.lang.Object` | `clone()` Returns a shallow copy of this ArrayList.
`boolean` | `contains(java.lang.Object elem)` Returns true if this ArrayList contains the specified element.
`void` | `ensureCapacity(int minCapacity)` Increases the capacity of this ArrayList, if necessary, to ensure that it can hold at least the number of components specified by the minimum capacity argument.
`java.lang.Object` | `get(int index)` Returns the element at the specified position in this ArrayList.
`int` | `indexOf(java.lang.Object elem)` Searches for the first occurence of the given argument, testing for equality using the `equals` method.
`int` | `indexOf(java.lang.Object elem, int index)` Searches for the first occurence of the given argument, beginning the search at `index`, and testing for equality using the `equals` method.
`boolean` | `isEmpty()` Tests if this ArrayList has no components.
`int` | `lastIndexOf(java.lang.Object elem)` Returns the index of the last occurrence of the specified object in this ArrayList.
`int` | `lastIndexOf(java.lang.Object elem, int index)` Searches backwards for the specified object, starting from the specified index, and returns an index to it.
`java.lang.Object` | `remove(int index)` Removes the element at the specified position in this ArrayList.
`void` | `removeRange(int fromIndex, int toIndex)` Removes from this ArrayList all of the elements whose index is between fromIndex, inclusive and toIndex, exclusive.
`java.lang.Object` | `set(int index, java.lang.Object element)` Replaces the element at the specified position in this ArrayList with the specified element.
`int` | `size()` Returns the number of components in this ArrayList.
`java.lang.Object[]` | `toArray()` Returns an array containing all of the elements in this ArrayList in the correct order.
`void` | `trimToSize()` Trims the capacity of this ArrayList to be the ArrayList's current size.

Methods inherited from class oracle.jbo.server.java.util.AbstractList
`equals, iterator, listIterator, listIterator`

Methods inherited from class oracle.jbo.server.java.util.AbstractCollection
`containsAll, remove, removeAll, retainAll, toString`

Methods inherited from class java.lang.Object
`finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Methods inherited from interface oracle.jbo.server.java.util.List
`containsAll, equals, hashCode, iterator, listIterator, listIterator, remove, removeAll, retainAll`

Constructor Detail

### ArrayList

    public ArrayList(int initialCapacity,
                     int capacityIncrement)

  Constructs an empty ArrayList with the specified initial capacity and capacity increment.
Parameters:
  `initialCapacity` - the initial capacity of the ArrayList.
  `capacityIncrement` - the amount by which the capacity is increased when the ArrayList overflows.
Since:
  JDK1.2

### ArrayList

    public ArrayList(int initialCapacity)

  Constructs an empty ArrayList with the specified initial capacity.
Parameters:
  `initialCapacity` - the initial capacity of the ArrayList.
Since:
  JDK1.2

### ArrayList

    public ArrayList()

  Constructs an empty ArrayList.
Since:
  JDK1.2

### ArrayList

    public ArrayList(Collection c)

  Constructs an ArrayList containing the elements of the specified Collection, in the order they are returned by the Collection's iterator. The ArrayList has initial capacity of 110% the size of the specified Collection, and the default capacity increment.
Since:
  JDK1.2

Method Detail

### trimToSize

    public void trimToSize()

  Trims the capacity of this ArrayList to be the ArrayList's current size. An application can use this operation to minimize the storage of an ArrayList.
  Since:
    JDK1.2

### ensureCapacity

    public void ensureCapacity(int minCapacity)

  Increases the capacity of this ArrayList, if necessary, to ensure that it can hold at least the number of components specified by the minimum capacity argument.
  Parameters:
    `minCapacity` - the desired minimum capacity.
  Since:
    JDK1.2

### size

    public int size()

  Returns the number of components in this ArrayList.
  Specified by:
    `size` in interface `List`
  Specified by:
    `size` in class `AbstractCollection`
  Returns:
    the number of components in this ArrayList.
  Since:
    JDK1.2

### isEmpty

    public boolean isEmpty()

  Tests if this ArrayList has no components.
  Specified by:
    `isEmpty` in interface `List`
  Overrides:
    `isEmpty` in class `AbstractCollection`
  Returns:
    `true` if this ArrayList has no components; `false` otherwise.
  Since:
    JDK1.2

### contains

    public boolean contains(java.lang.Object elem)

  Returns true if this ArrayList contains the specified element.
  Specified by:
    `contains` in interface `List`
  Overrides:
    `contains` in class `AbstractCollection`
  Parameters:
    `elem` - element whose presence in this List is to be tested.
  Since:
    JDK1.2

### indexOf

    public int indexOf(java.lang.Object elem)

  Searches for the first occurence of the given argument, testing for equality using the `equals` method.
  Specified by:
    `indexOf` in interface `List`
  Overrides:
    `indexOf` in class `AbstractList`
  Parameters:
    `elem` - an object.
  Returns:
    the index of the first occurrence of the argument in this ArrayList; returns `-1` if the object is not found.
  Since:
    JDK1.2
  See Also:
    `Object.equals(Object)`

### indexOf

    public int indexOf(java.lang.Object elem,
                       int index)

  Searches for the first occurence of the given argument, beginning the search at `index`, and testing for equality using the `equals` method.
  Specified by:
    `indexOf` in interface `List`
  Overrides:
    `indexOf` in class `AbstractList`
  Parameters:
    `elem` - an object.
    `index` - the index to start searching from.
  Returns:
    the index of the first occurrence of the object argument in this ArrayList at position `index` or later in the ArrayList; returns `-1` if the object is not found.
  Since:
    JDK1.2
  See Also:
    `Object.equals(Object)`

### lastIndexOf

    public int lastIndexOf(java.lang.Object elem)

  Returns the index of the last occurrence of the specified object in this ArrayList.
  Specified by:
    `lastIndexOf` in interface `List`
  Overrides:
    `lastIndexOf` in class `AbstractList`
  Parameters:
    `elem` - the desired component.
  Returns:
    the index of the last occurrence of the specified object in this ArrayList; returns -1 if the object is not found.
  Since:
    JDK1.2

### lastIndexOf

    public int lastIndexOf(java.lang.Object elem,
                           int index)

  Searches backwards for the specified object, starting from the specified index, and returns an index to it.
  Specified by:
    `lastIndexOf` in interface `List`
  Overrides:
    `lastIndexOf` in class `AbstractList`
  Parameters:
    `elem` - the desired component.
    `index` - the index to start searching from.
  Returns:
    the index of the last occurrence of the specified object in this ArrayList at position less than index in the ArrayList; -1 if the object is not found.
  Since:
    JDK1.2

### clone

    public java.lang.Object clone()

  Returns a shallow copy of this ArrayList. (The elements themselves are not copied.)
  Returns:
    a clone of this ArrayList.
  Since:
    JDK1.2

### toArray

    public java.lang.Object[] toArray()

  Returns an array containing all of the elements in this ArrayList in the correct order.
  Specified by:
    `toArray` in interface `List`
  Overrides:
    `toArray` in class `AbstractCollection`
  Since:
    JDK1.2

### get

    public java.lang.Object get(int index)

  Returns the element at the specified position in this ArrayList.
  Specified by:
    `get` in interface `List`
  Specified by:
    `get` in class `AbstractList`
  Parameters:
    `index` - index of element to return.
  Throws:
    `java.lang.ArrayIndexOutOfBoundsException` - index is out of range (index < 0 || index >= size()).
  Since:
    JDK1.2

### set

    public java.lang.Object set(int index,
                                java.lang.Object element)

  Replaces the element at the specified position in this ArrayList with the specified element.
  Specified by:
    `set` in interface `List`
  Overrides:
    `set` in class `AbstractList`
  Parameters:
    `index` - index of element to replace.
    `element` - element to be stored at the specified position.
  Returns:
    the element previously at the specified position.
  Throws:
    `java.lang.ArrayIndexOutOfBoundsException` - index out of range (index < 0 || index >= size()).
    `java.lang.IllegalArgumentException` - fromIndex > toIndex.
  Since:
    JDK1.2

### add

    public boolean add(java.lang.Object o)

  Appends the specified element to the end of this ArrayList.
  Specified by:
    `add` in interface `List`
  Overrides:
    `add` in class `AbstractList`
  Parameters:
    `o` - element to be appended to this ArrayList.
  Returns:
    true (as per the general contract of Collection.add).
  Since:
    JDK1.2

### add

    public void add(int index,
                    java.lang.Object element)

  Inserts the specified element at the specified position in this ArrayList. Shifts the element currently at that position (if any) and any subsequent elements to the right (adds one to their indices).
  Specified by:
    `add` in interface `List`
  Overrides:
    `add` in class `AbstractList`
  Parameters:
    `index` - index at which the specified element is to be inserted.
    `element` - element to be inserted.
  Throws:
    `java.lang.ArrayIndexOutOfBoundsException` - index is out of range (index < 0 || index > size()).
  Since:
    JDK1.2

### remove

    public java.lang.Object remove(int index)

  Removes the element at the specified position in this ArrayList. Shifts any subsequent elements to the left (subtracts one from their indices). Returns the element that was removed from the ArrayList.
  Specified by:
    `remove` in interface `List`
  Overrides:
    `remove` in class `AbstractList`
  Parameters:
    `index` - the index of the element to removed.
  Returns:
    the element previously at the specified position.
  Throws:
    `java.lang.ArrayIndexOutOfBoundsException` - index out of range (index < 0 || index >= size()).
  Since:
    JDK1.2

### clear

    public void clear()

  Removes all of the elements from this ArrayList. The ArrayList will be empty after this call returns, unless it throws an exception.
  Specified by:
    `clear` in interface `List`
  Overrides:
    `clear` in class `AbstractCollection`
  Throws:
    `UnsupportedOperationException` - clear is not supported by this Set.
  Since:
    JDK1.2

### addAll

    public boolean addAll(Collection c)

  Appends all of the elements in the specified Collection to the end of this this ArrayList, in the order that they are returned by the specified Collection's Iterator. The behavior of this operation is undefined if the specified Collection is modified while the operation is in progress. (This implies that the behavior of this call is undefined if the the specified Collection is this ArrayList, and this ArrayList is nonempty.)
  Specified by:
    `addAll` in interface `List`
  Overrides:
    `addAll` in class `AbstractCollection`
  Parameters:
    `c` - elements to be inserted into this ArrayList.
  Throws:
    `java.lang.ArrayIndexOutOfBoundsException` - index out of range (index < 0 || index > size()).
  Since:
    JDK1.2
  See Also:
    `AbstractCollection.add(Object)`

### removeRange

    public void removeRange(int fromIndex,
                            int toIndex)

  Removes from this ArrayList all of the elements whose index is between fromIndex, inclusive and toIndex, exclusive. Shifts any succeeding elements to the left (reduces their index). This call shortens the ArrayList by (toIndex - fromIndex) elements. (If toIndex==fromIndex, this operation has no effect.)
  Specified by:
    `removeRange` in interface `List`
  Overrides:
    `removeRange` in class `AbstractList`
  Parameters:
    `fromIndex` - index of first element to be removed.
    `toIndex` - index after last element to be removed.
  Throws:
    `java.lang.ArrayIndexOutOfBoundsException` - fromIndex or toIndex out of range (fromIndex < 0 || fromIndex >= size() || toIndex > size() || toIndex < fromIndex).
  Since:
    JDK1.2

### addAll

    public boolean addAll(int index,
                          Collection c)

  Inserts all of the elements in the specified Collection into this ArrayList, starting at the specified position. Shifts the element currently at that position (if any) and any subsequent elements to the right (increases their indices). The new elements will appear in the ArrayList in the order that they are returned by the specified Collection's iterator.
  Specified by:
    `addAll` in interface `List`
  Overrides:
    `addAll` in class `AbstractList`
  Parameters:
    `index` - index at which to insert first element from the specified collection.
    `c` - elements to be inserted into this ArrayList.
  Returns:
    true if this List changed as a result of the call.
  Throws:
    `java.lang.ArrayIndexOutOfBoundsException` - index out of range (index < 0 || index > size()).
  Since:
    JDK1.2

Overview | Package | Class | Tree | Deprecated | Index | Help
| Oracle Application Development Framework Model and Business Components Java API Reference 10g Release 3 (10.1.3) B16005-01
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 1997, 2005, Oracle. All rights reserved.