I dati strutturati

Le variabili che abbiamo utilizzato finora rientrano nei tipi di dati semplici o primitivi o scalari (int, long, char, float, double, boolean).
Tali tipi di dati sono disponibili nativamente nel linguaggio Java, senza la necessità di utilizzare librerie aggiuntive.

Tutti i linguaggi di programmazione evoluti permettono di raggruppare questi dati semplici in collezioni che prendono il nome di dati strutturati.
Il numero di elementi presenti nella collezione rappresenta la dimensione della struttura dati.

Le strutture dati possono appartenere alle seguenti tipologie:

  • statiche, ossia che mantengono la loro dimensione inalterata durante tutta la vita della struttura
  • dinamiche, ossia che consentono variazioni di dimensione durante la vita della struttura

I tipi di dati strutturati solitamente messi a dispozione dai più comuni linguaggi di programmazione sono:

  • gli array, ossia collezioni finite di elementi omogenei, cioé dello stesso tipo.
    In questa categoria rientrano i vettori e le matrici a due o più dimensioni.
  • i record, o struct, ossia collezioni finite di elementi anche non omogenei, quindi di diverso tipo

In questa sezione ci soffermeremo sugli array ed in particolare sui vettori (array monodimensionali) e sulle matrici a due dimensioni (array bidimensionali).

Gli array

Un array è una collezione finita di elementi omogenei, ossia dello stesso tipo.
La quantità di elementi è stabilita al momento della creazione dell'array e non può variare per tutta la durata dell'esecuzione del programma.

Se gli elementi sono disposti secondo una sola dimensione, l'array prende anche il nome di vettore.
Se gli elementi sono disposti in due dimensioni, una per le righe ed una per le colonne, l'array viene chiamato matrice.

Nel caso in cui le dimensioni fossero più di due, in generale n, avremo semplicemente un array ad n dimensioni o n-dimensionale.

Nota:
Gli elementi di un array occupano in memoria uno spazio compatto, ossia formato da celle di memoria contigue.