com.espertech.esper.collection
Class ArrayBackedCollection<T>

java.lang.Object
  extended by com.espertech.esper.collection.ArrayBackedCollection<T>
All Implemented Interfaces:
java.lang.Iterable<T>, java.util.Collection<T>

public class ArrayBackedCollection<T>
extends java.lang.Object
implements java.util.Collection<T>

A fast collection backed by an array with severe limitations. Allows direct access to the backing array - this must be used with care as old elements could be in the array and the array is only valid until the number of elements indicated by size.

Implements only the add, size and clear methods of the collection interface.

When running out of space for the underlying array, allocates a new array of double the size of the current array.

Not synchronized and not thread-safe.


Nested Class Summary
 class ArrayBackedCollection.ArrayBackedCollectionIterator
           
 
Constructor Summary
ArrayBackedCollection(int currentSize)
          Ctor.
 
Method Summary
 boolean add(T object)
           
 boolean addAll(java.util.Collection c)
           
 void clear()
           
 boolean contains(java.lang.Object o)
           
 boolean containsAll(java.util.Collection c)
           
 java.lang.Object[] getArray()
          Returns the backing object array, valid until the current size.
 boolean isEmpty()
           
 java.util.Iterator<T> iterator()
           
 boolean remove(java.lang.Object o)
           
 boolean removeAll(java.util.Collection c)
           
 boolean retainAll(java.util.Collection c)
           
 int size()
           
 java.lang.Object[] toArray()
           
<T> T[]
toArray(T[] a)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface java.util.Collection
equals, hashCode
 

Constructor Detail

ArrayBackedCollection

public ArrayBackedCollection(int currentSize)
Ctor.

Parameters:
currentSize - is the initial size of the backing array.
Method Detail

add

public boolean add(T object)
Specified by:
add in interface java.util.Collection<T>

clear

public void clear()
Specified by:
clear in interface java.util.Collection<T>

size

public int size()
Specified by:
size in interface java.util.Collection<T>

getArray

public java.lang.Object[] getArray()
Returns the backing object array, valid until the current size.

Applications must ensure to not read past current size as old elements can be encountered.

Returns:
backing array

isEmpty

public boolean isEmpty()
Specified by:
isEmpty in interface java.util.Collection<T>

contains

public boolean contains(java.lang.Object o)
Specified by:
contains in interface java.util.Collection<T>

iterator

public java.util.Iterator<T> iterator()
Specified by:
iterator in interface java.lang.Iterable<T>
Specified by:
iterator in interface java.util.Collection<T>

toArray

public java.lang.Object[] toArray()
Specified by:
toArray in interface java.util.Collection<T>

remove

public boolean remove(java.lang.Object o)
Specified by:
remove in interface java.util.Collection<T>

addAll

public boolean addAll(java.util.Collection c)
Specified by:
addAll in interface java.util.Collection<T>

retainAll

public boolean retainAll(java.util.Collection c)
Specified by:
retainAll in interface java.util.Collection<T>

removeAll

public boolean removeAll(java.util.Collection c)
Specified by:
removeAll in interface java.util.Collection<T>

containsAll

public boolean containsAll(java.util.Collection c)
Specified by:
containsAll in interface java.util.Collection<T>

toArray

public <T> T[] toArray(T[] a)
Specified by:
toArray in interface java.util.Collection<T>

© 2006-2015 EsperTech Inc.
All rights reserved.
Visit us at espertech.com