Práce s datovými strukturami v Javě

Obsah
V určitém okamžiku našeho vývoje se jako tvůrci softwaru dostaneme do situací, ve kterých musíme v rámci našich programů dělat mnohem složitější věci, obecně se to promítá do složitější správy dat a jejich jiné organizace.
Datová strukturaK tomu máme Datové struktury, které nám umožňují organizovat naše informace v rámci programu, abychom k nim mohli mít řádný a schematický přístup. v Jáva Díky jeho třídám a standardním knihovnám můžeme zvládat různé typy struktur, takže pokud se dozvíme, které máme k dispozici, je možné, že dokážeme využít potřebnou výhodu a splnit tak své cíle.
A pole je typ struktury, která má lineární konformaci a může ukládat množství dat stejného typu. Data, která můžete ukládat, jsou primitivní typy, jako například int, bool atd. Ale můžete také ukládat typy objektů, ačkoli v tomto případě je uložen odkaz na objekt a ne na objekt jako takový, nicméně je to něco velmi užitečného vědět.
PřístupBýt lineární, přístup k jeho obsahu musí být proveden postupně, ačkoli můžeme ukázat přímo na jeho index a získat jeho obsah, trasa ve většině případů, kterou můžeme udělat na této struktuře, odpovídá sekvenci vašich indexů.
Když máme index na prvek, je to pole nebo jednorozměrný vektorNa druhou stranu, když máme více než jeden index na prvek, mluvíme o polích vícerozměrné, to znamená, že v rámci indexu máme vnitřní strukturu s vlastními indexy.
Deklarace pole je velmi jednoduchá, stačí definovat typ dat, která bude ukládat, a pomocí závorek určit rozměry, poté musíme definovat jeho název a tím jej můžeme začít používat.
Ačkoli existuje několik způsobů, jak deklarovat pole, preferovaný je krátký formulář, jak vidíme níže:
zadejte [] nameArrary = nový typ [délka];

V případě pole vícerozměrné můžeme udělat totéž, ale přidat nové vrstvy nebo dimenze do stejné deklarace, například:
Dvourozměrné pole:
typ [] [] nameArrary = nový typ [délka] [délka];

Trojrozměrné pole:
typ [] [] [] nameArrary = nový typ [délka] [délka] [délka];

Jediná věc, kterou musíme mít na paměti, je, že po třech dimenzích se věci stanou mnohem složitějšími, ale to bude dáno našimi potřebami v době vývoje programu.
K procházení pole musíme použít jeden z iteračních cyklů, které máme k dispozici, přičemž cyklus je pro jeden z oblíbených, protože můžeme určit velikost pole a projít každý z jeho prvků.
Musíme mít na paměti, že indexy polí začínají od nuly, takže v tříprvkovém poli by jejich indexy byly [0], [1], [2], To je třeba vzít v úvahu, protože se nejedná o tradiční účet, což může vést ke zmatku.
Obecný příklad, jak procházet polem, je něco jako následující:
 pro (int i = 0; i

Stejným způsobem, jakým jsme v tomto malém příkladu provedli sítotisk obsahu odpovídajícího rejstříku, můžeme s polem také provádět sekvenční přiřazování a další operace. V případě vícerozměrného pole musíme udělat cyklus pro každou z dimenzí, které máme, proto říkáme, že po více než třech dimenzích se pole stává velmi složitým.
Chystáme se vytvořit malý kód, ve kterém definujeme pole, poté si projdeme jeho prvky a ukážeme je na obrazovce. Pojďme se tedy podívat, jak náš kód vypadá:
 public class ExampleArray1 {public static void main (String [] argv) {int [] ourArray = new int [12]; for (int i = 0; i <12; i ++) {ourArray [i] = i +1; System.out.println ("Obsah pole v: [" + i + "] je:" + ourArray [i]); } System.out.println ("Celková délka pole je:" + našeArray.length); }} 

V tomto programu první věc, kterou uděláme po definování naší třídy a metody hlavní je definovat pole typu s názvem int naše pole ke kterému přiřadíme délku 12 prvků, pak se smyčkou for, která jde od 0 do 11, přiřadíme hodnotu každému z indexů pole, pak to uděláme okamžitě, vytiskneme jeho hodnotu a nakonec použijeme vlastnictví délka pole, které nám umožňuje získat jeho celkovou délku, a vytiskneme jej rovnoměrně.
Pokud to uvidíme v naší konzole při provádění programu, získáme následující:

ZVĚTŠIT

Jak vidíme, získáme řádek pro každý prvek pole a konečný řádek, který udává jeho skutečnou velikost. Všimli jsme si také, že pokud počítáme od 0 do 11, máme 12 prvků, takže to, co vysvětlujeme o počtu indexů, je předvedeno z pole.
Používání polí je velmi populární a velmi užitečné, ale jsou chvíle, kdy začíná být vidět jeho omezení, zvláště když pracujeme s velmi dynamickými strukturami, kde nevíme, kolik prvků na konci budeme mít a kde potřebujeme trochu více funkcí kromě iterací pro smyčku skrz její prvky.
Když vidíme, že potřebujeme být komplexnější při zpracování dat, můžeme přejít na sbírky, což není nic jiného než řada tříd seskupených ve standardní knihovně Jáva java.util a které nám umožňují vytvářet další typy datových struktur.
V tomto případě třídu trochu prozkoumáme ArrayList, což nám umožňuje vytvářet seznamy polí, jak naznačuje jeho název, ale abychom mohli manipulovat s jejími prvky, musíme to udělat prostřednictvím různých metod.
Podívejme se níže na malý seznam dostupných metod třídy ArrayList důležitější a že možná budeme muset vytvořit naše programy, pokud budeme potřebovat něco dalšího, můžeme se vždy uchýlit k oficiální dokumentaci jazyka.
přidat ()Tato metoda nám umožňuje přidat prvek do seznamu buď na konci, nebo na určité pozici, což je definováno předáním parametrů.
Průhledná ()Vyčistí strukturu odstraněním nebo vyprázdněním všech prvků, které obsahuje.
dostat ()Vrátí hodnotu uvedeného indexu dotyčného seznamu.
odstranit ()Tato metoda nám umožňuje odebrat konkrétní prvek z datové struktury.
toArray ()Tato metoda nám umožňuje provést převod pole obsahu seznamu nebo datové struktury.
Chcete -li deklarovat seznam pomocí ArrayList, jednoduše musíme vytvořit instanci této třídy, s tím můžeme začít pracovat na přiřazování prvků a obsahu, proto můžeme vidět následující syntaxi:
ArrayList ourList = new ArrayList ();

Ačkoli můžeme také použít deklaraci a současné přiřazení prvků, jak vidíme v následujícím řádku kódu:
Seznam ourList = Arrays.asList ("Pedro", "Juan", "Manuel");

Prohlídku našeho seznamu lze provést iteračním cyklem pomocí pro () že jsme již viděli v polích, rozdíl je v tom, že protože nevíme jistě počet prvků v našich seznamech, musíme definovat limit pomocí metody velikost () stejné a pro získání obsahu v určitém indexu použijeme metodu dostat (). Příkladem syntaxe pro tento návod může být následující:
 pro (int i = 0; i

Nyní vytvoříme malý program, ve kterém uvedeme do praxe to, o čem jsme viděli ArrayList a tímto způsobem určit učení o uvedené datové struktuře:
 import java.util.ArrayList; public class ExampleList1 {public static void main (String [] argv) {ArrayList ourList = new ArrayList (); ourList.add ("Peter"); ourList.add ("John"); ourList.add ("Francisco"); ourList.add ("Manolo"); ourList.add ("Paul"); pro (int i = 0; i

V tomto kódu vidíme, že první věc, kterou uděláme, je import třídy ArrayList balíčku java.util, pokud ne, nebudeme jej moci použít.
Poté jsme definovali nový seznam prvků typu Tětiva, pak budeme seznam pomocí této metody populární přidat ()Jak vidíme, nedefinovali jsme limit prvku, tento seznam bude dynamicky růst, jak do něj přidáme prvky.
Nakonec s cyklem pro () a pomocí metody velikost () našeho objektu seznamu procházíme jeho prvky a pro získání hodnoty každé pozice použijeme metodu dostat () s tím pak můžeme vytisknout obsah. Podívejme se, jak to vypadá, když to spustíme na naší konzole:

ZVĚTŠIT

Tím jsme tento tutoriál dokončili, již jsme se naučili vytvářet a pracovat s datovými strukturami uvnitř Jáva, to nám umožní vytvářet složitější aplikace a programy, které splňují naše potřeby.
wave wave wave wave wave