Funzioni per array

Un array è una lista di dati. Si può avere un array di qualsiasi tipo di dati.
Ciascun dato in un array è identificato da un indice numerico che rappresenta la sua posizione nell’array.
Il primo elemento nell’array è [0], il secondo elemento è [1], e così via.
Gli array sono simili agli oggetti, quindi devono essere creati tramite la parola chiave new.
Ogni array possiede una variabile intera length, il numero totale di elementi nell’array.


Esempi


int[] numeri = new int[3];
numeri[0] = 90;
numeri[1] = 150;
numeri[2] = 30;
int a = numeri[0] + numeri[1];
int b = numeri[1] + numeri[2];
int[] numeri = { 90, 150, 30 };
int a = numeri[0] + numeri[1];
int b = numeri[1] + numeri[2];
int gradi = 360;
float[] valori_coseno = new float[gradi];
for(int i=0; i < gradi; i++)
{
   valori_coseno[i] = cos(TWO_PI/gradi * i);
}

Funzioni per array


arraycopy()

Copia un array (o una parte di esso) in un altro array.
L’array src viene copiato a partire da srcPos nell’array dest a partire da destPos.
Il numero di elementi da copiare è indicato da length.
La versione semplificata con due parametri copia un array intero in un altro della stessa dimensione.
Questo è equivalente a arraycopy(src, 0, dst, 0, src.length).
Questa funzione è più efficiente nel copiare array piuttosto che l’iterazione tramite un for() che copia ciascun elemento.

Sintassi:

arraycopy(src, dest)
arraycopy(src, dest, length)
arraycopy(src, srcPos, dest, destPos, length)

Tutte le funzioni seguenti non modificano il parametro array ma elaborano i dati contenuti in esso e restituiscono il risultato come un nuovo array.

shorten()

Accorcia l’array di un elemento (elimina l’ultimo elemento).

expand()

Aumenta la dimensione dell’array.
Di default, questa funzione raddoppia la dimensione dell’array, ma il parametro opzionale newSize permette il controllo preciso sull’aumento di dimensione.
Quando si aumenta la dimensione di un array di oggetti, è necessario effettuare un’operazione di casting sull’array risultato.

Per esempio:

BG[] items = (BG[]) expand(originalArray).

Sintassi:

expand(array)
expand(array, newSize)

append()

Aggiunge un elemento alla fine dell’array.
Il tipo del nuovo elemento deve essere lo stesso del tipo base dell’array.

concat()

Concatena due array.
Per esempio, concatenare l’array { 1, 2, 3 } e l’array { 4, 5, 6 } produce l’array { 1, 2, 3, 4, 5, 6 }.
I due parametri devono essere array con lo stesso tipo base.

splice()

Inserisce un valore o un array di valori in un array esistente a una certa posizione.
I primi due parametri devono essere dello stesso tipo.
Il primo array sarà usato come destinazione, il secondo contiene i dati che saranno inseriti.

Sintassi:

splice(array, value, index)
splice(array, array2, index)

subset()

Estrae un array di elementi. I parametri offset e length specificano quali elementi estrarre.

Se length non è dato, gli elementi saranno estratti da offset fino alla fine dell’array. Ricordarsi che il primo elemento dell’array è alla posizione 0….

Sintassi:

subset(array, offset)
subset(array, offset, length)

sort()

Ordina un array di numeri dal più piccolo al più grande, ordina un array di parole in ordine alfabetico.
Il parametro countspecifica il numero di elementi da ordinare.
Per esempio se nell’array ci sono 12 elementi e il valore di count è 5, soltanto i primi 5 elementi dell’array saranno ordinati.

Sintassi:

sort(dataArray)
sort(dataArray, count)

reverse()

Inverte l’ordine del contenuto dell’array.