Condividi tramite


Matrici tipizzate

Una matrice tipizzata è un tipo di dati che consente di annotare variabili, costanti, funzioni e parametri come se si trattasse di un tipo di dati intrinseco. Ogni matrice tipizzata dispone di un tipo di dati di base, che è anche il tipo di ogni elemento della matrice. A sua volta il tipo di base utilizzato può essere un tipo matrice: pertanto sono ammesse le matrici di matrici.

Utilizzo di matrici tipizzate

Un tipo di dati seguito da un insieme di parentesi quadre definisce una matrice tipizzata unidimensionale. Per definire una matrice a n dimensioni, il tipo di dati di base è seguito da un insieme di parentesi quadre con n-1 virgole tra le parentesi.

Inizialmente, non è allocato alcuno spazio di memorizzazione per una variabile di un tipo di matrice tipizzata e il valore è undefined. La variabile di matrice può essere inizializzata utilizzando l'operatore new, un valore letterale di matrice, un costruttore di matrice o un'altra matrice. L'inizializzazione può essere eseguita al momento della dichiarazione della matrice tipizzata oppure successivamente, come per le variabili di altro tipo. Se la dimensionalità di una variabile o di un parametro non corrisponde alla dimensionalità o al tipo della matrice assegnata alla variabile o passata al parametro, verrà generato un errore di mancata corrispondenza del tipo.

Utilizzando un costruttore di matrici è possibile creare una matrice di un dato tipo nativo con la dimensione (fissa) specificata. Ogni argomento deve essere un'espressione che restituisce un numero intero non negativo. Il valore di ogni argomento determina la misura di ciascuna dimensione, mentre il numero degli argomenti determina la dimensionalità della matrice.

Nell'esempio che segue sono mostrate alcune dichiarazioni di matrici semplici:

// Simple array of strings; initially empty. The variable 'names' itself
// will be null until something is assigned to it
var names : String[];

// Create an array of 50 objects; the variable 'things' won't be null,
// but each element of the array will be until they are assigned values.
var things : Object[] = new Object[50];
// Put the current date and time in element 42.
things[42] = new Date();

// An array of arrays of integers; initially it is null.
var matrix : int[][];
// Initialize the array of arrays.
matrix = new (int[])[5];
// Initialize each array in the array of arrays.
for(var i = 0; i<5; i++)
   matrix[i] = new int[5];
// Put some values into the matrix.
matrix[2][3] = 6;
matrix[2][4] = 7;

// A three-dimensional array
var multidim : double[,,] = new double[5,4,3];
// Put some values into the matrix.
multidim[1,3,0] = Math.PI*5.;

Vedere anche

Riferimenti

Istruzione var

Operatore new

Istruzione function

Concetti

Annotazione di tipi

Altre risorse

Tipi di dati (Visual Studio - JScript)