net.ranides.assira.collection
Class ListUtils

java.lang.Object
  extended by net.ranides.assira.collection.ListUtils

public final class ListUtils
extends Object

Operacje na listach.

Author:
ranides

Nested Class Summary
static class ListUtils.ConstList<T>
           
 
Method Summary
static
<T> List<T>
asList(Iterable<T> iterable)
          Tworzy nową listę i kopiuje do niej elementy znajdujące się w obiekcie iterable
static
<T> List<T>
asList(Iterator<T> iterator)
          Tworzy nową listę i kopiuje do niej elementy zwrócone przez podany iterator.
static
<T> List<T>
clip(List<T> list, int size)
          Przycina listę, jeśli lista ma rozmiar większy od podanej granicy.
static
<T1,T2> int
compareSize(List<T1> a, List<T2> b)
          Porównuje rozmiary list null safe method
static
<T> List<T>
constCopy(Collection<? extends T> values)
           
static
<T> List<T>
constCopy(T[] values)
           
static
<T1,T2> boolean
equalSize(List<T1> a, List<T2> b)
          Sprawdza, czy listy mają ten sam rozmiar.
static
<T> T
first(List<?> values, Class<T> clazz)
          Wyszukuje i zwraca pierwszy obiekt o klasie T, lub null, jeśli takiej wartości brak null safe method
static
<T> T
first(List<T> values)
          Wyszukuje i zwraca pierwszy obiekt z listy, lub null, jeśli lista pusta.
static Object first(Object values)
          Wyszukuje i zwraca pierwszy obiekt z listy, lub null, jeśli obiekt nie jest listą.
static
<T> T
get(List<T> values, int index)
          Pobiera index-ty element z listy, lub zwraca null, jeśli lista ma mniejszy rozmiar niż konieczne null safe method
static
<T> T
get(List<T> values, int index, T ddefault)
          Pobiera index-ty element z listy, lub zwraca wartość domyślną, jeśli lista ma mniejszy rozmiar niż konieczne null safe method
static
<T> boolean
isEmpty(List<T> values)
          Sprawdza czy lista jest pusta.
static
<T> T
last(List<?> values, Class<T> clazz)
          Wyszukuje i zwraca ostatni obiekt o klasie T, lub null, jeśli takiej wartości brak.
static
<T> T
last(List<T> values)
          Zwraca ostatni obiekt z listy, lub null, jeśli lista jest pusta.
static Object last(Object values)
          Zwraca ostatni obiekt z listy, lub null, jeśli obiekt nie jest listą.
static
<T> T
shift(List<T> list)
          Usuwa pierwszy element z listy i przesuwa wszystkie pozostałe wartości w lewo.
static
<T> int
size(List<T> values)
          Zwraca rozmiar listy.
static
<Auto> Auto
toArray(Class<?> type, List<?> source)
          Konwertuje listę elementów na tablicę o podanym typie, dokonując po drodze odpowiednich rzutowań i unbox'owań, jeśli są konieczne.
static
<T> T
unshift(List<T> list)
          Usuwa ostatni element z tablicy i przesuwa wszystkie pozostałe wartości w prawo.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

get

public static <T> T get(List<T> values,
                        int index,
                        T ddefault)
Pobiera index-ty element z listy, lub zwraca wartość domyślną, jeśli lista ma mniejszy rozmiar niż konieczne
null safe method

Type Parameters:
T -
Parameters:
values -
index -
ddefault -
Returns:

get

public static <T> T get(List<T> values,
                        int index)
Pobiera index-ty element z listy, lub zwraca null, jeśli lista ma mniejszy rozmiar niż konieczne
null safe method

Type Parameters:
T -
Parameters:
values -
index -
Returns:

first

public static <T> T first(List<?> values,
                          Class<T> clazz)
Wyszukuje i zwraca pierwszy obiekt o klasie T, lub null, jeśli takiej wartości brak
null safe method

Type Parameters:
T -
Parameters:
values - lista, w której obiekt klasy jest szukany
clazz - szukana klasa
Returns:

first

public static <T> T first(List<T> values)
Wyszukuje i zwraca pierwszy obiekt z listy, lub null, jeśli lista pusta.
null safe method

Type Parameters:
T -
Parameters:
values -
Returns:

first

public static Object first(Object values)
Wyszukuje i zwraca pierwszy obiekt z listy, lub null, jeśli obiekt nie jest listą.
null safe method

Parameters:
values -
Returns:

last

public static <T> T last(List<?> values,
                         Class<T> clazz)
Wyszukuje i zwraca ostatni obiekt o klasie T, lub null, jeśli takiej wartości brak.
null safe method

Type Parameters:
T -
Parameters:
values - lista, w której obiekt klasy jest szukany
clazz - szukana klasa
Returns:

last

public static <T> T last(List<T> values)
Zwraca ostatni obiekt z listy, lub null, jeśli lista jest pusta.
null safe method

Type Parameters:
T -
Parameters:
values - lista, w której obiekt klasy jest szukany
Returns:

last

public static Object last(Object values)
Zwraca ostatni obiekt z listy, lub null, jeśli obiekt nie jest listą.
null safe method

Parameters:
values -
Returns:

size

public static <T> int size(List<T> values)
Zwraca rozmiar listy.
null safe method

Type Parameters:
T -
Parameters:
values -
Returns:

isEmpty

public static <T> boolean isEmpty(List<T> values)
Sprawdza czy lista jest pusta.
null safe method

Type Parameters:
T -
Parameters:
values -
Returns:

compareSize

public static <T1,T2> int compareSize(List<T1> a,
                                      List<T2> b)
Porównuje rozmiary list
null safe method

Type Parameters:
T1 -
T2 -
Parameters:
a -
b -
Returns:
ujemne - jeśli a < b
dodatnie - jeśli a > b
dodatnie - jeśli a == b

equalSize

public static <T1,T2> boolean equalSize(List<T1> a,
                                        List<T2> b)
Sprawdza, czy listy mają ten sam rozmiar. Listy, które są równe null traktowane są jako puste (rozmiar 0).
null safe method

Type Parameters:
T1 -
T2 -
Parameters:
a -
b -
Returns:

clip

public static <T> List<T> clip(List<T> list,
                               int size)
Przycina listę, jeśli lista ma rozmiar większy od podanej granicy.

Type Parameters:
T -
Parameters:
list -
size - maksymalny rozmiar listy
Returns:
"view" listy podanej jako argument. Modyfikacja obciętej listy ma wpływ na kolekcję źródłową.

toArray

public static <Auto> Auto toArray(Class<?> type,
                                  List<?> source)
Konwertuje listę elementów na tablicę o podanym typie, dokonując po drodze odpowiednich rzutowań i unbox'owań, jeśli są konieczne. Zwrócona tablica jest niezależna od listy.

Type Parameters:
T -
Parameters:
arrayClazz -
source -
Returns:
Throws:
ClassCastException - jeśli konwersja elementów jest niemożliwa do przeprowadzenia

shift

public static <T> T shift(List<T> list)
Usuwa pierwszy element z listy i przesuwa wszystkie pozostałe wartości w lewo. Uwaga! Ostatni element po operacji shift jest zduplikowany!

Type Parameters:
T -
Parameters:
list -
Returns:
usunięta wartość

unshift

public static <T> T unshift(List<T> list)
Usuwa ostatni element z tablicy i przesuwa wszystkie pozostałe wartości w prawo. Uwaga! Pierwszy element po operacji unshift jest zduplikowany!

Type Parameters:
T -
Parameters:
list -
Returns:
usunięta wartość

asList

public static <T> List<T> asList(Iterable<T> iterable)
Tworzy nową listę i kopiuje do niej elementy znajdujące się w obiekcie iterable

Type Parameters:
T -
Parameters:
iterable -
Returns:

asList

public static <T> List<T> asList(Iterator<T> iterator)
Tworzy nową listę i kopiuje do niej elementy zwrócone przez podany iterator.

Type Parameters:
T -
Parameters:
iterator -
Returns:

constCopy

public static <T> List<T> constCopy(T[] values)

constCopy

public static <T> List<T> constCopy(Collection<? extends T> values)


Copyright © 2013. All Rights Reserved.