it.unimi.dsi.fastutil.objects
Class ObjectBigLists.ListBigList<K>

java.lang.Object
  extended by java.util.AbstractCollection<K>
      extended by it.unimi.dsi.fastutil.objects.AbstractObjectCollection<K>
          extended by it.unimi.dsi.fastutil.objects.AbstractObjectBigList<K>
              extended by it.unimi.dsi.fastutil.objects.ObjectBigLists.ListBigList<K>
All Implemented Interfaces:
BigList<K>, ObjectBigList<K>, ObjectCollection<K>, ObjectIterable<K>, Size64, Stack<K>, Serializable, Comparable<BigList<? extends K>>, Iterable<K>, Collection<K>
Enclosing class:
ObjectBigLists

public static class ObjectBigLists.ListBigList<K>
extends AbstractObjectBigList<K>
implements Serializable

A class exposing a list as a big list.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class it.unimi.dsi.fastutil.objects.AbstractObjectBigList
AbstractObjectBigList.ObjectSubList<K>
 
Field Summary
static long serialVersionUID
           
 
Constructor Summary
protected ObjectBigLists.ListBigList(ObjectList<K> list)
           
 
Method Summary
 boolean add(K key)
           
 void add(long index, K key)
          Inserts the specified element at the specified position in this big list (optional operation).
 boolean addAll(Collection<? extends K> c)
          Delegates to a more generic method.
 boolean addAll(long index, Collection<? extends K> c)
          Inserts all of the elements in the specified collection into this big list at the specified position (optional operation).
 boolean addAll(long index, ObjectBigList<K> c)
           
 boolean addAll(long index, ObjectCollection<K> c)
           
 boolean addAll(ObjectBigList<K> c)
           
 boolean addAll(ObjectCollection<K> c)
           
 void clear()
           
 boolean contains(Object key)
           
 boolean containsAll(Collection<?> c)
          Checks whether this collection contains all elements from the given collection.
 boolean containsAll(ObjectCollection<K> c)
           
 K get(long index)
          Returns the element at the specified position.
 int hashCode()
          Returns the hash code for this big list, which is identical to List.hashCode().
 long indexOf(Object k)
          Returns the index of the first occurrence of the specified element in this big list, or -1 if this big list does not contain the element.
 boolean isEmpty()
          Checks whether the stack is empty.
 ObjectBigListIterator<K> iterator()
          Returns a type-specific iterator on the elements of this collection.
 long lastIndexOf(Object k)
          Returns the index of the last occurrence of the specified element in this big list, or -1 if this big list does not contain the element.
 ObjectBigListIterator<K> listIterator()
          Returns a type-specific big-list iterator on this type-specific big list.
 ObjectBigListIterator<K> listIterator(long index)
          Returns a type-specific list iterator on this type-specific big list starting at a given index.
 K remove(long index)
          Removes the element at the specified position.
 boolean removeAll(Collection<?> c)
          Remove from this collection all elements in the given collection.
 boolean removeAll(ObjectCollection<K> c)
           
 void removeElements(long from, long to)
          Removes elements of this type-specific big list one-by-one.
 boolean retainAll(Collection<?> c)
          Retains in this collection only elements from the given collection.
 boolean retainAll(ObjectCollection<K> c)
           
 K set(long index, K k)
          Replaces the element at the specified position in this big list with the specified element (optional operation).
 int size()
          Deprecated. 
 void size(long size)
          Sets the size of this big list.
 long size64()
          Returns the size of this data structure as a long.
 ObjectBigList<K> subList(long from, long to)
          Returns a type-specific view of the portion of this type-specific big list from the index from, inclusive, to the index to, exclusive.
 Object[] toArray()
           
<T> T[]
toArray(T[] a)
          Returns an containing the items of this collection; the runtime type of the returned array is that of the specified array.
 
Methods inherited from class it.unimi.dsi.fastutil.objects.AbstractObjectBigList
addAll, addElements, addElements, compareTo, ensureIndex, ensureRestrictedIndex, equals, get, getElements, listIterator, peek, pop, push, remove, set, size, top, toString
 
Methods inherited from class it.unimi.dsi.fastutil.objects.AbstractObjectCollection
objectIterator
 
Methods inherited from class java.util.AbstractCollection
remove
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface it.unimi.dsi.fastutil.objects.ObjectCollection
objectIterator
 
Methods inherited from interface java.util.Collection
remove
 

Field Detail

serialVersionUID

public static final long serialVersionUID
See Also:
Constant Field Values
Constructor Detail

ObjectBigLists.ListBigList

protected ObjectBigLists.ListBigList(ObjectList<K> list)
Method Detail

size64

public long size64()
Description copied from interface: Size64
Returns the size of this data structure as a long.

Specified by:
size64 in interface Size64
Returns:
the size of this data structure.

size

@Deprecated
public int size()
Deprecated. 

Description copied from interface: Size64
Returns the size of this data structure, minimized with Integer.MAX_VALUE.

Specified by:
size in interface Size64
Specified by:
size in interface Collection<K>
Overrides:
size in class AbstractObjectBigList<K>
Returns:
the size of this data structure, minimized with Integer.MAX_VALUE.
See Also:
Collection.size()

size

public void size(long size)
Description copied from interface: BigList
Sets the size of this big list.

If the specified size is smaller than the current size, the last elements are discarded. Otherwise, they are filled with 0/null/false.

Specified by:
size in interface BigList<K>
Overrides:
size in class AbstractObjectBigList<K>
Parameters:
size - the new size.

iterator

public ObjectBigListIterator<K> iterator()
Description copied from interface: ObjectCollection
Returns a type-specific iterator on the elements of this collection.

Note that this specification strengthens the one given in Iterable.iterator(), which was already strengthened in the corresponding type-specific class, but was weakened by the fact that this interface extends Collection.

Specified by:
iterator in interface ObjectBigList<K>
Specified by:
iterator in interface ObjectCollection<K>
Specified by:
iterator in interface ObjectIterable<K>
Specified by:
iterator in interface Iterable<K>
Specified by:
iterator in interface Collection<K>
Overrides:
iterator in class AbstractObjectBigList<K>
Returns:
a type-specific iterator on the elements of this collection.
See Also:
List.iterator()

listIterator

public ObjectBigListIterator<K> listIterator()
Description copied from interface: ObjectBigList
Returns a type-specific big-list iterator on this type-specific big list.

Specified by:
listIterator in interface BigList<K>
Specified by:
listIterator in interface ObjectBigList<K>
Overrides:
listIterator in class AbstractObjectBigList<K>
Returns:
a big-list iterator over the elements in this big list.
See Also:
List.listIterator()

addAll

public boolean addAll(long index,
                      Collection<? extends K> c)
Description copied from interface: BigList
Inserts all of the elements in the specified collection into this big list at the specified position (optional operation).

Specified by:
addAll in interface BigList<K>
Overrides:
addAll in class AbstractObjectBigList<K>
Parameters:
index - index at which to insert the first element from the specified collection.
c - collection containing elements to be added to this big list.
Returns:
true if this big list changed as a result of the call
See Also:
List.addAll(int, Collection)

listIterator

public ObjectBigListIterator<K> listIterator(long index)
Description copied from interface: ObjectBigList
Returns a type-specific list iterator on this type-specific big list starting at a given index.

Specified by:
listIterator in interface BigList<K>
Specified by:
listIterator in interface ObjectBigList<K>
Overrides:
listIterator in class AbstractObjectBigList<K>
Parameters:
index - index of first element to be returned from the big-list iterator.
Returns:
a big-list iterator of the elements in this big list, starting at the specified position in this big list.
See Also:
BigList.listIterator(long)

subList

public ObjectBigList<K> subList(long from,
                                long to)
Description copied from interface: ObjectBigList
Returns a type-specific view of the portion of this type-specific big list from the index from, inclusive, to the index to, exclusive.

Note that this specification strengthens the one given in BigList.subList(long,long).

Specified by:
subList in interface BigList<K>
Specified by:
subList in interface ObjectBigList<K>
Overrides:
subList in class AbstractObjectBigList<K>
Parameters:
from - the starting element (inclusive).
to - the ending element (exclusive).
Returns:
a big sublist view of this big list.
See Also:
BigList.subList(long,long)

contains

public boolean contains(Object key)
Specified by:
contains in interface Collection<K>
Overrides:
contains in class AbstractObjectBigList<K>

toArray

public Object[] toArray()
Specified by:
toArray in interface Collection<K>
Overrides:
toArray in class AbstractObjectCollection<K>

removeElements

public void removeElements(long from,
                           long to)
Description copied from class: AbstractObjectBigList
Removes elements of this type-specific big list one-by-one.

This is a trivial iterator-based implementation. It is expected that implementations will override this method with a more optimized version.

Specified by:
removeElements in interface ObjectBigList<K>
Overrides:
removeElements in class AbstractObjectBigList<K>
Parameters:
from - the start index (inclusive).
to - the end index (exclusive).

add

public void add(long index,
                K key)
Description copied from interface: BigList
Inserts the specified element at the specified position in this big list (optional operation).

Specified by:
add in interface BigList<K>
Overrides:
add in class AbstractObjectBigList<K>
Parameters:
index - a position in the big list.
key - an element to be inserted.
See Also:
List.add(int,Object)

addAll

public boolean addAll(long index,
                      ObjectCollection<K> c)

addAll

public boolean addAll(long index,
                      ObjectBigList<K> c)

add

public boolean add(K key)
Specified by:
add in interface Collection<K>
Overrides:
add in class AbstractObjectBigList<K>

addAll

public boolean addAll(ObjectBigList<K> c)

get

public K get(long index)
Description copied from interface: BigList
Returns the element at the specified position.

Specified by:
get in interface BigList<K>
Parameters:
index - a position in the big list.
Returns:
the element at the specified position.
See Also:
List.get(int)

indexOf

public long indexOf(Object k)
Description copied from interface: BigList
Returns the index of the first occurrence of the specified element in this big list, or -1 if this big list does not contain the element.

Specified by:
indexOf in interface BigList<K>
Overrides:
indexOf in class AbstractObjectBigList<K>
Parameters:
k - the object to search for.
Returns:
the index of the first occurrence of the specified element in this big list, or -1 if this big list does not contain the element.
See Also:
List.indexOf(Object)

lastIndexOf

public long lastIndexOf(Object k)
Description copied from interface: BigList
Returns the index of the last occurrence of the specified element in this big list, or -1 if this big list does not contain the element.

Specified by:
lastIndexOf in interface BigList<K>
Overrides:
lastIndexOf in class AbstractObjectBigList<K>
Parameters:
k - the object to search for.
Returns:
the index of the last occurrence of the specified element in this big list, or -1 if this big list does not contain the element.
See Also:
List.lastIndexOf(Object)

remove

public K remove(long index)
Description copied from interface: BigList
Removes the element at the specified position.

Specified by:
remove in interface BigList<K>
Overrides:
remove in class AbstractObjectBigList<K>
Parameters:
index - a position in the big list.
Returns:
the element previously at the specified position.
See Also:
List.remove(int)

set

public K set(long index,
             K k)
Description copied from interface: BigList
Replaces the element at the specified position in this big list with the specified element (optional operation).

Specified by:
set in interface BigList<K>
Overrides:
set in class AbstractObjectBigList<K>
Parameters:
index - a position in the big list.
k - the element to be stored at the specified position.
Returns:
the element previously at the specified positions.
See Also:
List.set(int,Object)

addAll

public boolean addAll(ObjectCollection<K> c)

containsAll

public boolean containsAll(ObjectCollection<K> c)

removeAll

public boolean removeAll(ObjectCollection<K> c)

retainAll

public boolean retainAll(ObjectCollection<K> c)

isEmpty

public boolean isEmpty()
Description copied from interface: Stack
Checks whether the stack is empty.

Specified by:
isEmpty in interface Stack<K>
Specified by:
isEmpty in interface Collection<K>
Overrides:
isEmpty in class AbstractObjectCollection<K>
Returns:
true if the stack is empty.

toArray

public <T> T[] toArray(T[] a)
Description copied from interface: ObjectCollection
Returns an containing the items of this collection; the runtime type of the returned array is that of the specified array.

Warning: Note that, contrarily to Collection.toArray(Object[]), this methods just writes all elements of this collection: no special value will be added after the last one.

Specified by:
toArray in interface ObjectCollection<K>
Specified by:
toArray in interface Collection<K>
Overrides:
toArray in class AbstractObjectCollection<K>
Parameters:
a - if this array is big enough, it will be used to store this collection.
Returns:
a primitive type array containing the items of this collection.
See Also:
Collection.toArray(Object[])

containsAll

public boolean containsAll(Collection<?> c)
Description copied from class: AbstractObjectCollection
Checks whether this collection contains all elements from the given collection.

Specified by:
containsAll in interface Collection<K>
Overrides:
containsAll in class AbstractObjectCollection<K>
Parameters:
c - a collection.
Returns:
true if this collection contains all elements of the argument.

addAll

public boolean addAll(Collection<? extends K> c)
Description copied from class: AbstractObjectBigList
Delegates to a more generic method.

Specified by:
addAll in interface Collection<K>
Overrides:
addAll in class AbstractObjectBigList<K>
Parameters:
c - a collection.
Returns:
true if this collection changed as a result of the call.

removeAll

public boolean removeAll(Collection<?> c)
Description copied from class: AbstractObjectCollection
Remove from this collection all elements in the given collection. If the collection is an instance of this class, it uses faster iterators.

Specified by:
removeAll in interface Collection<K>
Overrides:
removeAll in class AbstractObjectCollection<K>
Parameters:
c - a collection.
Returns:
true if this collection changed as a result of the call.

retainAll

public boolean retainAll(Collection<?> c)
Description copied from class: AbstractObjectCollection
Retains in this collection only elements from the given collection.

Specified by:
retainAll in interface Collection<K>
Overrides:
retainAll in class AbstractObjectCollection<K>
Parameters:
c - a collection.
Returns:
true if this collection changed as a result of the call.

clear

public void clear()
Specified by:
clear in interface Collection<K>
Overrides:
clear in class AbstractCollection<K>

hashCode

public int hashCode()
Description copied from class: AbstractObjectBigList
Returns the hash code for this big list, which is identical to List.hashCode().

Specified by:
hashCode in interface Collection<K>
Overrides:
hashCode in class AbstractObjectBigList<K>
Returns:
the hash code for this big list.


Copyright © 2011. All Rights Reserved.