net.ranides.assira.collection.list
Class RTList<T>
java.lang.Object
java.util.AbstractCollection<E>
java.util.AbstractList<T>
net.ranides.assira.collection.list.RTList<T>
- Type Parameters:
T -
- All Implemented Interfaces:
- Iterable<T>, Collection<T>, List<T>
public class RTList<T>
- extends AbstractList<T>
Specjalna wersja listy, oszczędzająca pamięć w maksymalnym możliwym stopniu.
Dokonuje realokacji po dowolnej modyfikacji, odpowiednio zwiększając lub
zmniejszając zużycie pamięci w czasie rzeczywistym. W szczególności pusta
lista wprowadza minimalny narzut pamięciowy, tzn nie alokuje żadnej pamięci na bufor.
Klasa wzorowana na EventListenerList, szczególnie
przydatna do obsługi kolekcji, które przez większość czasu nie są modyfikowane,
posiadają mało elementów, lub w ogóle pozostają puste.
całej zawartości
- Author:
- ranides
|
Constructor Summary |
RTList()
Tworzy nową pustą listę. |
RTList(Collection<? extends T> values)
Tworzy nową listę, zawierającą podane elementy. |
RTList
public RTList()
- Tworzy nową pustą listę.
RTList
public RTList(Collection<? extends T> values)
- Tworzy nową listę, zawierającą podane elementy.
- Parameters:
values -
get
public T get(int index)
- Specified by:
get in interface List<T>- Specified by:
get in class AbstractList<T>
size
public int size()
- Specified by:
size in interface Collection<T>- Specified by:
size in interface List<T>- Specified by:
size in class AbstractCollection<T>
clear
public void clear()
- Specified by:
clear in interface Collection<T>- Specified by:
clear in interface List<T>- Overrides:
clear in class AbstractList<T>
set
public T set(int index,
T element)
- Specified by:
set in interface List<T>- Overrides:
set in class AbstractList<T>
add
public void add(int index,
T element)
- Specified by:
add in interface List<T>- Overrides:
add in class AbstractList<T>
remove
public T remove(int index)
- Specified by:
remove in interface List<T>- Overrides:
remove in class AbstractList<T>
Copyright © 2013. All Rights Reserved.