Cuprins >> Array-uri > Declararea array-urilor
Articol de importanță mare

Atunci când avem de-a face cu declararea unui array, ar trebui să ne amintim întotdeauna că array-urile în C# au dimensiuni fixe. Lungimea lor este stabilită la momentul instanțierii, determină numărul total de elemente care le pot stoca, și nu poate fi modificată/redimensionată ulterior. Dacă vă amintiți lecția precedentă, am comparat un array cu o clădire, în care avem apartamente (elementele array-ului), fiecare fiind identificat printr-un număr de apartament (index, sau indice). Ca și în lumea reală, odată ce o clădire este construită după un plan (“instanțierea” array-ului – crearea unei copii după plan), nu putem adăuga sau elimina apartamente din ea.

Un array poate fi declarat după cum urmează:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
using System;
 
namespace BunaLume
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] unArray;
            
            Console.ReadLine();
        }
    }
}

În exemplul nostru, am declarat un array de tip întreg, numit unArray. Folosind [] indicăm faptul că vrem să declarăm un array de elemente, nu un singur element. Array-urile sunt tipuri de referință. Acest lucru înseamnă că atunci când acestea sunt declarate, acestea stochează valoarea implicită null. Acest lucru se întâmplă deoarece memoria pentru elementele array-ului nu este încă alocată.

Array-urile sunt tipuri de referință, acestea sunt inițializate folosind cuvântul cheie new.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
using System;
 
namespace BunaLume
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] unArray = new int[6];
            
            Console.ReadLine();
        }
    }
}

În codul de mai sus, am declarat un array cu o lungime de 6 elemente (amintiți-vă, indicii array-urilor încep de la 0, nu 1, astfel încât puteți să îi accesați de la unArray[0] și până la unArray[5]!), de tip întreg. Aceasta înseamnă că memoria dinamică (numită și heap) conține acum 6 numere întregi, și toate sunt inițializate cu valoarea 0.

Întotdeauna amintiți-vă că declarația unui array nu permite inițializarea array-urilor de lungime negativă (evident) și că tipul array-ului trebuie să coincidă întotdeauna cu tipul de inițializare (nu se poate scrie int[] unArray = new double[];).

Conceptele explicate în această lecție sunt prezentate și vizual, ca parte a următorului videoclip: