Darbs ar datu struktūrām Java

Satura rādītājs
Kādā mūsu programmatūras veidotāja attīstības brīdī mēs nonāksim situācijās, kurās mūsu programmās ir jādara daudz sarežģītākas lietas, parasti tas nozīmē sarežģītāku datu pārvaldību un atšķirīgu to organizāciju.
Datu struktūraŠim nolūkam mums ir Datu struktūras, kas ļauj mums programmā sakārtot savu informāciju, lai mēs varētu tai kārtīgi un shematiski piekļūt. In Java Mēs varam rīkoties ar dažāda veida struktūrām, pateicoties tās klasēm un standarta bibliotēkām, tādēļ, ja mēs uzzināsim, kuras no tām mums ir pieejamas, iespējams, mēs varam izmantot nepieciešamās priekšrocības un tādējādi sasniegt savus mērķus.
A masīvs ir struktūras veids, kam ir lineāra konformācija un kurā var glabāt tāda paša veida datu apjomu. Dati, kurus varat saglabāt, ir primitīvi veidi, piemēram int, bool utt. Bet jūs varat arī saglabāt objektu veidus, lai gan šajā gadījumā tas tiek saglabāts kā atsauce uz objektu, nevis uz objektu kā tādu, tomēr tas ir kaut kas ļoti noderīgs, lai to uzzinātu.
PiekļuveTā kā tas ir lineārs, piekļuve tā saturam ir jāveic secīgi, lai gan mēs varam norādīt tieši uz tā indeksu un iegūt tā saturu, vairumā gadījumu maršruts, ko mēs varam veikt šajā struktūrā, reaģē uz jūsu indeksu secību.
Ja mums ir indekss vienam elementam, tas ir masīvs vai viendimensiju vektorsNo otras puses, ja katram elementam ir vairāk nekā viens indekss, mēs runājam par masīviem daudzdimensiju, tas ir, indeksā mums ir iekšēja struktūra ar saviem indeksiem.
Masīva deklarēšana ir ļoti vienkārša, mums ir tikai jānosaka datu veids, ko tas glabās, un jānorāda izmēri ar iekavām, tad mums ir jānosaka tā nosaukums un ar to mēs varam sākt to izmantot.
Lai gan ir vairāki veidi, kā deklarēt masīvu, vēlamais veids ir īsa forma, kā mēs redzam tālāk:
tips [] nameArrary = jauns tips [garums];

Masīva gadījumā daudzdimensiju mēs varam darīt to pašu, bet pievienojot jaunus slāņus vai izmērus tajā pašā deklarācijā, piemēram:
Divdimensiju masīvs:
tips [] [] nameArrary = jauns tips [length] [length];

Trīsdimensiju masīvs:
tips [] [] [] nameArrary = jauns tips [garums] [garums] [garums];

Vienīgais, kas mums jāpatur prātā, ir tas, ka pēc trim dimensijām lietas kļūst daudz sarežģītākas, taču to noteiks mūsu vajadzības programmas izstrādes laikā.
Lai izietu caur masīvu, mums jāizmanto viens no mums pieejamajiem iteratīvajiem cikliem priekš viens no iecienītākajiem, jo ​​mēs varam norādīt masīva lielumu un iziet cauri katram tā elementam.
Mums jāpatur prātā, ka masīvu indeksi sākas no nulles, tāpēc trīs elementu masīvā to indeksi būtu [0], [1], [2], Tas ir jāņem vērā, jo tas nav tradicionāls konts, tas var radīt neskaidrības.
Vispārīgs piemērs tam, kā veikt masīvu, ir kaut kas līdzīgs šim:
 par (int i = 0; i

Tādā pašā veidā, kā šajā mazajā piemērā mēs esam izveidojuši atbilstošā indeksa satura sietspiedi, mēs varam arī veikt secīgus uzdevumus un citas darbības ar masīvu. Daudzdimensiju masīva gadījumā mums ir jāveic cikls katrai no mūsu dimensijām, tāpēc mēs runājam, ka pēc vairāk nekā trim dimensijām masīvs kļūst ļoti sarežģīts.
Mēs izveidosim nelielu kodu, kurā mēs definēsim masīvu, pēc tam apskatīsim tā elementus un parādīsim tos ekrānā. Tātad, redzēsim, kā izskatās mūsu kods:
 public class ExampleArray1 {public static void main (String [] argv) {int [] ourArray = new int [12]; par (int i = 0; i <12; i ++) {ourArray [i] = i +1; System.out.println ("Masīva saturs: [" + i + "] ir:" + ourArray [i]); } System.out.println ("Masīva kopējais garums ir:" + ourArray.length); }} 

Šajā programmā pirmā lieta, ko mēs darām pēc klases un metodes definēšanas galvenais ir definēt tipa masīvu ar nosaukumu int mūsu masīvs kam mēs piešķiram 12 elementu garumu, tad ar for cilpu, kas iet no 0 līdz 11, mēs piešķirsim vērtību katram no masīva indeksiem, tad mēs to darīsim uzreiz, mēs izdrukāsim tā vērtību un visbeidzot mēs izmantosim īpašums garums no masīva, kas ļauj mums iegūt tā kopējo garumu, un mēs to drukājam vienādi.
Ja mēs to redzam savā konsolē, izpildot programmu, mēs iegūsim sekojošo:

PALIELINĀT

Kā redzam, mēs iegūstam līniju katram masīva elementam un pēdējo līniju, kas norāda tā patieso lielumu, mēs arī atzīmējam, ka, ja mēs skaitām no 0 līdz 11, mums ir 12 elementi, tāpēc tas, ko mēs izskaidrojam par indeksa skaitu, ir parādīts masīvs.
Masīvu izmantošana ir ļoti populāra un ļoti noderīga, tomēr ir reizes, kad tās ierobežojumus sāk saskatīt, it īpaši, ja mēs strādājam ar ļoti dinamiskām struktūrām, kurās mēs nezinām, cik elementu mums būs beigās un kur mums ir nepieciešams nedaudz vairāk funkcionalitātes, izņemot atkārtojumus, lai izietu cauri tās elementiem.
Kad mēs uzskatām sevi par nepieciešamību sarežģītāk apstrādāt datus, mēs varam doties uz kolekcijas, kas ir nekas vairāk kā klases, kas sagrupētas standarta bibliotēkā Java java.util un kas ļauj mums izveidot cita veida datu struktūras.
Šajā gadījumā mēs nedaudz izpētīsim klasi ArrayList, kas ļauj mums izveidot masīvu sarakstus, kā norāda nosaukums, bet, lai manipulētu ar tā elementiem, tas jādara, izmantojot dažādas metodes.
Tālāk aplūkosim nelielu klases pieejamo metožu sarakstu ArrayList vēl svarīgāk un ka mums, iespējams, būs jāizveido mūsu programmas, ja mums ir nepieciešams kaut kas papildu, mēs vienmēr varam izmantot oficiālo valodas dokumentāciju.
pievienot ()Šī metode ļauj sarakstam pievienot elementu beigās vai noteiktā pozīcijā, to definē, nododot parametrus.
skaidrs ()Notīra struktūru, izdzēšot vai iztukšojot visus tajā esošos elementus.
gūt ()Tas atgriež attiecīgā saraksta norādītā indeksa vērtību.
noņemt ()Šī metode ļauj mums noņemt noteiktu elementu no datu struktūras.
toArray ()Šī metode ļauj veikt masīva pārvēršanu saraksta vai datu struktūras saturā.
Lai deklarētu sarakstu ar ArrayList, mums vienkārši jāizveido šīs klases eksemplārs, ar to mēs varam sākt strādāt pie elementu un satura piešķiršanas, tāpēc mēs varam redzēt šādu sintaksi:
ArrayList ourList = jauns ArrayList ();

Lai gan mēs varam izmantot arī deklarāciju un vienlaicīgu elementu piešķiršanu, kā redzams šādā koda rindā:
List ourList = Arrays.asList ("Pedro", "Juan", "Manuel");

Mūsu saraksta apskati var sasniegt ar atkārtotu ciklu ar priekš () ko mēs jau redzējām masīvos, atšķirība ir tāda, ka, tā kā mēs noteikti nezinām elementu skaitu mūsu sarakstos, mums ir jānosaka ierobežojums, izmantojot metodi Izmērs () Lai iegūtu saturu noteiktā indeksā, mēs izmantojam šo metodi gūt (). Šīs darbības pārskata sintakses piemērs varētu būt šāds:
 par (int i = 0; i

Tagad mēs izveidosim nelielu programmu, kurā mēs praktiski īstenosim to, ko esam redzējuši ArrayList un šādā veidā norādiet mācīšanos par minēto datu struktūru:
 importēt java.util.ArrayList; public class ExampleList1 {public static void main (String [] argv) {ArrayList ourList = new ArrayList (); ourList.add ("Pēteris"); ourList.add ("Jānis"); ourList.add ("Francisco"); ourList.add ("Manolo"); ourList.add ("Pāvils"); par (int i = 0; i

Šajā kodā mēs redzam, ka pirmā lieta, ko mēs darām, ir klases importēšana ArrayList no iepakojuma java.util, ja mēs to nedarīsim, mēs to nevarēsim izmantot.
Tad mēs esam definējuši jaunu tipa elementu sarakstu Stīga, tad mēs popularizēsim sarakstu, izmantojot metodi pievienot ()Kā redzam, mēs neesam definējuši elementu ierobežojumu, šis saraksts dinamiski palielināsies, pievienojot tam elementus.
Beidzot ar ciklu priekš () un izmantojot metodi Izmērs () no mūsu saraksta objekta mēs ejam cauri tā elementiem un, lai iegūtu katras pozīcijas vērtību, mēs izmantojam metodi gūt () ar to mēs varam izdrukāt saturu. Apskatīsim, kā tas izskatās, palaižot to mūsu konsolē:

PALIELINĀT

Ar to mēs esam pabeiguši šo apmācību, mēs jau esam iemācījušies izveidot un strādāt ar datu struktūrām Java, tas ļaus mums izveidot sarežģītākas lietojumprogrammas un programmas, kas atbilst mūsu vajadzībām.
wave wave wave wave wave