com.botbox.util
Class ArrayQueue

java.lang.Object
  extended by com.botbox.util.ArrayQueue
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable

public class ArrayQueue
extends java.lang.Object
implements java.lang.Cloneable, java.io.Serializable

The ArrayQueue class implements a simple queue using a rotating, resizable array. Permits all elements, including null. The usage is basically the same as for ArrayList but this implementation is optimized for adding last and removing first element while the ArrayList shifts a lot of data when removing first element. Note that this implementation is not synchronized and if an ArrayQueue instance is accessed by several threads concurrently, and at least one thread modifies the queue, it must be synchronized externally.

Version:
$Revision: 4074 $, $Date: 2008-04-11 11:10:43 -0500 (Fri, 11 Apr 2008) $
Author:
Joakim Eriksson (joakim.eriksson@botbox.com), Niclas Finne (niclas.finne@botbox.com), Sverker Janson (sverker.janson@botbox.com)
See Also:
Serialized Form

Constructor Summary
ArrayQueue()
           
ArrayQueue(int initialCapacity)
           
 
Method Summary
 void add(int index, java.lang.Object element)
           
 boolean add(java.lang.Object element)
           
 void clear()
           
 java.lang.Object clone()
          Returns a shallow copy of this Queue (the elements themselves are not copied).
 boolean contains(java.lang.Object element)
           
 void ensureCapacity(int minCapacity)
           
 java.lang.Object get(int index)
           
 int indexOf(java.lang.Object element)
           
 int indexOf(java.lang.Object element, int index)
           
 boolean isEmpty()
           
 java.lang.Object remove(int index)
           
 java.lang.Object set(int index, java.lang.Object element)
           
 int size()
           
 java.lang.Object[] toArray()
           
 java.lang.Object[] toArray(java.lang.Object[] array)
           
 void trimToSize()
           
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ArrayQueue

public ArrayQueue()

ArrayQueue

public ArrayQueue(int initialCapacity)
Method Detail

ensureCapacity

public void ensureCapacity(int minCapacity)

trimToSize

public void trimToSize()

size

public int size()

isEmpty

public boolean isEmpty()

contains

public boolean contains(java.lang.Object element)

indexOf

public int indexOf(java.lang.Object element)

indexOf

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

get

public java.lang.Object get(int index)

set

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

add

public boolean add(java.lang.Object element)

add

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

remove

public java.lang.Object remove(int index)

clear

public void clear()

clone

public java.lang.Object clone()
Returns a shallow copy of this Queue (the elements themselves are not copied).

Overrides:
clone in class java.lang.Object

toArray

public java.lang.Object[] toArray()

toArray

public java.lang.Object[] toArray(java.lang.Object[] array)


Copyright © 2007-2009 Association for Trading Agent Research. All Rights Reserved.