Co je to seznam Java?
Seznamy Java jsou zvláště vhodné pro scénáře, kde velikost datového souboru není od začátku jasná nebo pokud se očekává, že se velikost bude v průběhu času měnit. Ukážeme vám konkrétní příklady použití seznamů Java a operace, které s nimi můžete provádět.
K čemu lze seznamy Java použít?
Seznamy jsou jednou ze základních datových struktur v programování v jazyce Java a lze je používat různými způsoby. Obsahují prvky, které jsou uspořádány v pořadí. Prvky v seznamu lze přidávat, upravovat, mazat nebo vyhledávat. Seznamy v jazyce Java mohou obsahovat objekty, které patří do různých tříd. Je také možné ukládat duplicitní prvky nebo prvky typu null. Seznamy v jazyce Java navíc podporují generické třídy a metody, což zajišťuje typovou bezpečnost.
Seznamy lze použít pro databázové aplikace. Zde se používají k ukládání a přístupu k velkým datovým sadám z databázových dotazů. V grafických uživatelských rozhraních se seznamy Java často používají k zobrazení seznamu prvků, jako jsou možnosti v rozevíracím menu nebo různé položky v internetovém obchodě.
Seznamy Java jsou také nepostradatelné v algoritmech a datových strukturách. Používají se v algoritmech třídění, vyhledávacích algoritmech a strukturách zásobníků a front. V síťových aplikacích mohou seznamy usnadnit správu připojení a soketů.
Jaké metody seznamu má Java?
Seznamy Java patří do rozhraní Collection a musí být importovány z balíčku java.util. S Java ArrayList, LinkedList, Vector a Stack existují různé implementační třídy, ze kterých si můžete vybrat. Různé instance seznamů můžete deklarovat pomocí následujícího kódu:
List linkedList = new LinkedList(); // LinkedList
List arrayList = new ArrayList(); // ArrayList
List vecList = new Vector(); // Vector
List stackList = new Stack(); //StackJavaZde jsou některé z nejdůležitějších metod, které můžete použít pro seznamy v Javě:
int size(): Určuje počet prvků v seznamuvoid add(int index, E element): Přidá prvek na konkrétní poziciboolean isEmpty(): Zkontroluje, zda je seznam prázdnývoid clear(): Odstraní všechny prvky ze seznamuboolean contains(Object o): Vrátí hodnotutrue, pokud je objektov seznamuboolean add(E e): Přidá prvek na konec seznamuboolean remove(Object o): Odstraní první výskyt prvkuE get(int index): Nahradí nebo vloží prvek na zadaný indexE set(int index, E element): Nahradí nebo vloží prvek na zadaný indexObject[] toArray(): Vrátí pole obsahující prvky ze seznamuList<E> subList(int fromIndex, int toIndex): Zachytí všechny prvky v zadaném intervaludefault void replaceAll(UnaryOperator<E> operator): Standardní metoda v Javě 8, která aplikuje unární operátory Javy na každý prvek a poté nahradí každý prvek výsledkem operace.
Jak používat seznamy Java
Níže předvedeme běžné metody, které se používají při práci se seznamy v Javě. Patří mezi ně převádění polí na seznamy a naopak, stejně jako třídění, načítání a úpravy prvků.
Převést pole na seznam
Chcete-li převést pole na seznam, můžete pole projít pomocí smyček a prvky přidávat do seznamu jeden po druhém pomocí metody add().
import java.util.*;
public class ArrayToList{
public static void main(String args[]){
// Creating Array
String[] colors={"blue","green","red","yellow"};
System.out.println("Array: "+Arrays.toString(colors));
//Converting Array to List
List<String> list=new ArrayList<String>();
for(String color: colors){
list.add(color);
}
System.out.println("List: "+list);
}
}JavaVýsledkem je následující výstup:
Array: [blue, green, red, yellow]
List: [blue, green, red, yellow]JavaPřevést seznam na pole
Pomocí metody toArray() můžete převést seznam na pole:
import java.util.*;
public class ListToArray{
public static void main(String args[]){
List<String> days = new ArrayList<String>();
days.add("Monday");
days.add("Tuesday");
days.add("Wednesday");
days.add("Thursday");
days.add("Friday");
days.add("Saturday");
days.add("Sunday");
// Converting ArrayList to Array
String[] array = days.toArray(new String[days.size()]);
System.out.println("Array: "+Arrays.toString(array));
System.out.println("List: "+days);
}
}JavaVe výstupu můžete vidět, že prvky v poli a seznamu jsou identické:
Array: [Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday]
List: [Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday]JavaVolání a změna prvků v seznamu Java
Pomocí metody get() můžete přistupovat k prvku na konkrétním indexu. Metoda set() vám umožňuje nahradit prvek jiným prvkem na určité pozici v seznamu.
import java.util.*;
public class ListExample{
public static void main(String args[]){
// Creating a List
List<String> letters=new ArrayList<String>();
// Adding elements
letters.add("a");
letters.add("b");
letters.add("c");
// get()
System.out.println("Element at index 1: "+letters.get(1));
// set()
letters.set(2, "d");
for(String letter: letters)
System.out.println(letter);
}
}JavaProtože počítání v Javě začíná indexem 0, dostaneme následující výsledek:
Element at index 1: b
a
b
dJavaSeřadit seznam
Seznam Java můžete seřadit pomocí metody .sort() z třídy Collections. Seznam můžete procházet pomocí smyčky a jednotlivé prvky postupně tisknout na konzoli:
import java.util.*;
class SortArrayList{
public static void main(String args[]){
// Creating a list of numbers
List<Integer> numbers=new ArrayList<Integer>();
numbers.add(4);
numbers.add(57);
numbers.add(92);
numbers.add(26);
// Sorting
Collections.sort(numbers);
for(Integer number: numbers)
System.out.println(number);
}
}JavaČísla v seznamu Java se na obrazovce zobrazují od nejmenšího po největší:
4
26
57
92Java