com.thinkaurelius.titan.util.datastructures

## Class RandomRemovalList<T>

- java.lang.Object
- - com.thinkaurelius.titan.util.datastructures.RandomRemovalList<T>

- Type Parameters:
    `T` -
  All Implemented Interfaces:
    Iterable<T>, Collection<T>, Iterator<T>

      public class RandomRemovalList<T>
      extends Object
      implements Collection<T>, Iterator<T>

  A list that allows efficient random removals.
  Author:
    Matthias Broecheler (me@matthiasb.com)

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static Random` | `random`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `RandomRemovalList()`
    `RandomRemovalList(Collection<T> objs)`
    `RandomRemovalList(int capacity)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `add(T obj)`
    `boolean` | `addAll(Collection<? extends T> c)`
    `void` | `clear()`
    `boolean` | `contains(Object o)`
    `boolean` | `containsAll(Collection<?> c)`
    `int` | `getNumCompactions()`
    `T` | `getRandom()`
    `boolean` | `hasNext()`
    `boolean` | `isEmpty()`
    `Iterator<T>` | `iterator()`
    `T` | `next()`
    `void` | `remove()`
    `boolean` | `remove(Object o)`
    `boolean` | `removeAll(Collection<?> c)`
    `boolean` | `retainAll(Collection<?> c)`
    `int` | `size()`
    `Object[]` | `toArray()`
    `<E> E[]` | `toArray(E[] 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`

- - ### Field Detail

    - #### random

          public static final Random random

  - ### Constructor Detail

    - #### RandomRemovalList

          public RandomRemovalList()

    - #### RandomRemovalList

          public RandomRemovalList(int capacity)

    - #### RandomRemovalList

          public RandomRemovalList(Collection<T> objs)

  - ### Method Detail

    - #### add

          public boolean add(T obj)

      Specified by:
        `add` in interface `Collection<T>`

    - #### getRandom

          public T getRandom()

    - #### size

          public int size()

      Specified by:
        `size` in interface `Collection<T>`

    - #### isEmpty

          public boolean isEmpty()

      Specified by:
        `isEmpty` in interface `Collection<T>`

    - #### getNumCompactions

          public int getNumCompactions()

    - #### addAll

          public boolean addAll(Collection<? extends T> c)

      Specified by:
        `addAll` in interface `Collection<T>`

    - #### clear

          public void clear()

      Specified by:
        `clear` in interface `Collection<T>`

    - #### contains

          public boolean contains(Object o)

      Specified by:
        `contains` in interface `Collection<T>`

    - #### containsAll

          public boolean containsAll(Collection<?> c)

      Specified by:
        `containsAll` in interface `Collection<T>`

    - #### hasNext

          public boolean hasNext()

      Specified by:
        `hasNext` in interface `Iterator<T>`

    - #### next

          public T next()

      Specified by:
        `next` in interface `Iterator<T>`

    - #### remove

          public void remove()

      Specified by:
        `remove` in interface `Iterator<T>`

    - #### iterator

          public Iterator<T> iterator()

      Specified by:
        `iterator` in interface `Iterable<T>`
      Specified by:
        `iterator` in interface `Collection<T>`

    - #### remove

          public boolean remove(Object o)

      Specified by:
        `remove` in interface `Collection<T>`

    - #### removeAll

          public boolean removeAll(Collection<?> c)

      Specified by:
        `removeAll` in interface `Collection<T>`

    - #### retainAll

          public boolean retainAll(Collection<?> c)

      Specified by:
        `retainAll` in interface `Collection<T>`

    - #### toArray

          public Object[] toArray()

      Specified by:
        `toArray` in interface `Collection<T>`

    - #### toArray

          public <E> E[] toArray(E[] a)

      Specified by:
        `toArray` in interface `Collection<T>`

Copyright © 2012–2014. All rights reserved.