Video: Rozdiel Medzi Enumeráciou A Iterátorom
2024 Autor: Mildred Bawerman | [email protected]. Naposledy zmenené: 2023-12-16 08:42
Výpočet vs Iterátor
Existuje veľa dátových štruktúr, ktoré v Jave fungujú ako kolekcie, ako sú vektory, tabuľky Hash a triedy, ktoré implementujú framework Java Collections (napr. HashMap, HashSet, ArrayList, TreeSet, TreeMap, LinkedList, LinkedHashMap a LinkedHashSet). Existuje mnoho spôsobov, ako iterovať cez jednotlivé prvky objektov v Jave. Java poskytuje dve rozhrania, ktoré uľahčujú túto úlohu. Výpočet a Iterátor sú dve z rozhraní nájdených v balíku java.util, ktoré poskytujú funkcie na výčet sekvencií alebo objektov so sadou položiek. Enumerátor bol predstavený v JDK 1.0 a Iterator, ktorý bol predstavený v JDK 1.2, prakticky duplikuje funkčnosť Enumerátora (v rámci kolekcií).
Čo je to enumerácia?
Výpočet je verejné rozhranie v Jave predstavené v JDK 1.0, ktoré poskytuje možnosť výčtu prostredníctvom sekvencií prvkov. Nachádza sa pod balíkom java.util. Keď je rozhranie Enumeration implementované objektom, tento objekt môže generovať postupnosť prvkov. Rozpočtové rozhranie má dve metódy. Metóda hasMoreElements () otestuje, či tento výčet obsahuje viac prvkov a nextElement () vráti nasledujúci prvok v poradí (ak je k dispozícii ešte aspoň jeden). Inými slovami, postupným volaním nextElement () môže programátor získať prístup k jednotlivým prvkom v sérii. Napríklad na tlač všetkých prvkov vo vektore v1 pomocou Enumerátoru je možné použiť nasledujúci útržok kódu.
Výpočet e = v1.elements ();
While (e.hasMoreLements ()) {
System.out.println (e.nextElement ());
}
Enumerátor sa dá použiť aj na definovanie toku vstupu do objektov SequenceInputStream.
Čo je to Iterátor?
Iterator je verejné rozhranie v balíku Java.util, ktoré umožňuje iteráciu cez prvky objektov kolekcií, ktoré implementujú rámec kolekcií (napríklad ArrayList, LinkedList atď.). To bolo predstavené v JDK 1.2 a nahradilo Enumerator v rámci Java Collections Framework. Iterátor má tri metódy. Metóda hasNext () testuje, či v kolekcii zostávajú prvky, a metóda next () vracia ďalší prvok v rade. Metódu remove () je možné použiť na odstránenie aktuálneho prvku z podkladovej kolekcie. Napríklad na tlač všetkých prvkov vo vektore v1 pomocou Iterátora je možné použiť nasledujúci útržok kódu.
Iterátor i = v1.elements ();
While (i.hasNext ()) {
System.out.println (e.next ());
}
Aký je rozdiel medzi Enumeráciou a Iterátorom?
Aj keď sú Enumeration a Iterator dve z rozhraní nájdených v balíku java.util, ktoré umožňujú iteráciu / výčet prostredníctvom prvkov série, majú svoje rozdiely. V skutočnosti Iterator, ktorý bol predstavený po Enumerácii, nahrádza Enumeráciu v rámci zbierok Java. Na rozdiel od výčtu je Iterator bezpečný proti zlyhaniu. To znamená, že súbežné úpravy (podkladovej kolekcie) nie sú povolené, keď sa používa Iterator. To je veľmi užitočné v prostrediach s viacerými vláknami, kde vždy existuje riziko súbežných úprav. V prípade súbežnej úpravy objekt Iterator vyvolá ConcurrentModificationException. Iterátor má v porovnaní s programom Enumerator kratšie názvy metód. Ďalejiterátor má ďalšiu funkcionalitu mazania prvkov počas iterácie (čo nie je možné pomocou programu Enumerator). Takže ak je potrebné odstrániť prvky zo zbierky, Iterator je jediná možnosť, o ktorej je možné uvažovať.
Odporúčaná:
Rozdiel Medzi Symetrickými A Asymetrickými špičkovými Molekulami
Kľúčovým rozdielom medzi symetrickými a asymetrickými hornými molekulami je to, že symetrické horné molekuly majú jednu správnu os otáčania a dva momenty zotrvačnosti
Rozdiel Medzi Transgénnymi A Knokautovanými Myšami
Kľúčovým rozdielom medzi transgénnymi a knockoutovanými myšami je, že transgénne myši majú do svojho genómu vložené cudzie gény, zatiaľ čo knockoutované myši majú funkciu
Rozdiel Medzi Cisgenézou A Intragenézou
Kľúčový rozdiel medzi cisgenézou a intragenézou je v tom, že do cisgenézy sa zavádzajú gény bez akejkoľvek zmeny sekvencie DNA a ge
Rozdiel Medzi Komunikáciou Medzi Zvieratami A ľuďmi
Komunikácia zviera vs. človek Prenos zmysluplných informácií je známy ako komunikácia a bola neoddeliteľnou súčasťou úspechu, a preto
Rozdiel Medzi Kľúčovým Rozdielom Medzi Kovovými A Nekovovými Minerálmi
Kľúčový rozdiel - kovové vs. nekovové minerály Minerál je prirodzene sa vyskytujúca tuhá a anorganická zložka s určitým chemickým vzorcom