Introduzione e gestione di array

20 marzo 2006

Gli array sono uno dei tipi di dati complessi più versatili e maggiormente utilizzati in qualsiasi linguaggio di programmazione. Rappresentano un formato particolarmente adatto per eseguire la maggior parte delle operazioni che richieda la memorizzazione temporanea e l’elaborazione di una lista di informazioni.

Forse per la loro struttura “particolare”, non sempre gli array risultano altrettanto digeribili come i formati stringa, booleano e numerico. Ricordo che quanto mi avvicinai per la prima volta ad ASP ero ancora decisamente a digiuno di linguaggi di sviluppo. Per i primi tempi tentai in tutti i modi di scartare l’uso di array riempiendo i codici di inutili elenchi di variabili.

Ancora oggi mi capita, seppur raramente, di trovare qualche paginetta in ASP scritta nei primi tempi e, a distanza di qualche anno, mi sembra veramente inconcepibile immaginare il tempo speso a copia/incollare variabili.

Per evitare di spendere tempo e risorse inutilmente nello sviluppo di script poco usabili, in questo articolo vedremo una breve introduzione agli array esplorando le principali funzioni di ASP + VBScript che consentono l’interazione con questo formato di dati.

Prima di cominciare è necessaria una premessa. Come ho già avuto modo di anticipare in altri articoli, la concezione di “tipo di dati” in ASP non è così orientata alla programmazione come in altri linguaggi, web oriented e non. Nonostante ASP non disponga di diversi tipi di dati bensì di uno solo con sfumature differenti, per semplicità considereremo array, stringhe, numeri e booleani come totalmente differenti ed indipendenti.

Array, vettori e matrici

Senza addentrarci nelle definizioni matematiche è necessario chiarire in principio il significato di questi 3 termini molto spesso utilizzati come sinonimi.

Di norma, si usa raccogliere sotto il termine informatico array sia gli elementi matematici corrispondenti a vettori sia le matrici. In questo articolo utilizzeremo come convenzione il termine vettori come riferimento ad array monodimensionali mentre considereremo matrici array multidimensionali. Se questi termini per ora vi spaventano non vi preoccupate, più avanti verranno chiariti.

Che cos’è un array

Veniamo al dunque: che cos’è un array?

In ASP possiamo considerare un array come un formato di dati corrispondente ad un elenco di elementi dove ogni elemento è contraddistinto da una coppia di chiave e valore.

Ad esempio, se prendiamo un array corrispondente alla lista dei mesi la lista di elementi sono i nomi dei mesi dove la chiave è il numero ed il valore è il nome del mese. Senza preoccuparci troppo dei valori l’anno

1 => gennaio
2 => febbraio

12 => dicembre

è il nostro primo array.

In ASP questa organizzazione di dati si trascrive come

anno(1) = gennaio
anno(2) = febbraio

anno(12) = dicembre

Come avrete capito anno è il nome dell’array, quello tra parentesi tonde è l’indice mentre a sinistra troviamo il valore che stiamo assegnando alla posizione dell’array.

Creare e popolare un array

Se provassimo subito a valorizzare una posizione di un array, come sopra, senza prima averlo definito ASP restituirebbe un errore poiché non è ancora stata allocata alcuna posizione di memoria per il nostro calendario. Per creare un array è necessario dichiararlo includendo nella dichiarazione il numero di posizioni da allocare – 1.

Dim anno(11)

Con la dichiarazione sopra abbiamo appena creato un anno di 12 posizioni. Se vi state chiedendo come mai di 12 quando vedete scritto 11 considerate che gli array partono sempre dall’indice 0. Di conseguenza gennaio sarà nella posizione anno(0) mentre dicembre anno(11).

Inoltre, al contrario di altri linguaggi di sviluppo maggiormente strutturati, il numero intero inserito in fase di dichiarazione non corrisponde al numero di elementi bensì all’ultimo indice disponibile nel nuovo array e, di conseguenza, a intero + 1 valori. Nel nostro caso anno(11) dichiara un array dove l’indice più altro è 11 ed il numero di elementi 12, ovvero da indice 0 a indice 11.

Se vuoi aggiornamenti su Introduzione e gestione di array inserisci la tua e-mail nel box qui sotto:
 
X
Se vuoi aggiornamenti su Introduzione e gestione di array

inserisci la tua e-mail nel box qui sotto:

Ho letto e acconsento l'informativa sulla privacy

Acconsento al trattamento di cui al punto 3 dell'informativa sulla privacy