Wednesday, June 19, 2019 01:04

Accesarea elementelor unui array

Așa cum am explicat într-o postare anterioară, array-urile pot fi văzute ca o clădire (array-ul în sine), cu apartamente (elementele array-ului), fiecare fiind identificat printr-un număr de apartament (indicii sau elementele array-ului). Deci, accesarea elementelor unui array se face prin indicii elementelor sale, la fel cum și găsirea unei adrese se face prin numărul apartamentului în interiorul unei clădiri.

Indicii Array-urilor încep de la 0 (nu de la 1! aceasta este o eroare foarte frecventă în rândul incepatorilor!), sunt numere consecutive, și ajung la numarul elementelor arrayului – 1 (deoarece indicii pornesc de la 0, în timp ce numărul de elemente încep cu 1).

Prin accesarea elementelor de array identificate printr-un index, putem atât citi cât și atribui o valoare, ceea ce înseamnă că elementele array-urilor pot fi tratate ca variabile.

Acesta este modul în care citim și scriem valori, prin accesarea elementelor de array:

Pentru a înțelege mai bine structura unui array, acesta este modul în care myArray ar putea fi ilustrat:

Accesarea elementelor unui array

Deoarece array-ul nostru este de tip int, elementele sale nu sunt inițializate cu valoarea null, ci cu valoarea implicită 0.

Array-urile merg mână în mână cu buclele. De exemplu, aceasta este o modalitate rapidă de populare a elementelor unui array, sau de a afișa toate elementele ununui array, prin utilizarea unui bucle for și o proprietate a array-urilor numită Length (despre care vom învăța mai târziu):

Proprietatea Length a unui array ne dă un număr întreg care reprezintă numărul de elemente în acel array (și începe de la 1, nu 0!). Deci, în cazul nostru, arr.Length este 5, pentru că am declarat un array cu 5 elemente.

Ar trebui să știți faptul că încercarea de a accesa un element al unui array folosind un index care este în afara intervalului de indici pentru acel array va provoca ceea ce noi numim o excepție IndexOutOfRangeException. De exemplu:

Codul de mai sus va genera o excepție IndexOutOfRangeException, pentru că am declarat un array de un singur element, și după cum știm deja, indicii array-urilor încep de la 0. Acest lucru înseamnă că singurul element al array-ului nostru se află la locația identificată prin indexul 0, și încercarea accesării locației cu indexul 1 va genera o eroare, pentru că nu există un indice 1 într-un array cu un singur element.

Un alt lucru pe care ar trebui să îl știți este faptul că nu puteți afișa un array la consolă, în mod direct. Deci, atunci când veți încerca acest lucru:

nu vă așteptați să aveți valorile acelui array afișate la consolă. În schimb, veți obține acest lucru:

printing arrays incorrectly

Dacă doriți să afișați elementele unui array, trebuie să treceți prin toate elementele sale, folosind o buclă de un anumit fel, și să afișați fiecare element individual. Vom prezenta acest lucru în lecția următoare.

Comments

comments

Tags: , ,

Leave a Reply