In un Array di Array si fa corrispondere ad ogni elemento di un dato array iniziale un
altro array. Per ciò un array di array viene anche chiamato array bidimensionale.
Volendo in java è possibile creare array n-dimensionali.
Ogni elemento di un array di array (bidimensionale) è individuato da un doppio
indice (uno per la riga e uno per la colonna) e proprio grazie a questa caratteristica vengono generalmente
usati per creare matrici
Creazione di un array bidimensionale:
<tipo di dato> nomeVariabile = new
<tipo di dato>[dimR][dimC]
esempio: int a=new int[3][5]
Per poter accedere all'elemento di riga i e colonna j
dell'array uso l'istruzione: a[i][j]
utilizzando a.length fornisce il numero di righe mentre
a[i].length fornisce il numero di colonne
esempio: si vuole realizzare un programma che crea una
matrice di dimensione a piacere nella quale l'utente inserisce dei numeri. Il
progrmma dovrà anche calcolare la somma di tutti i numeri inseriti in ogni riga
int m=in.readInt(“inserisci num righe”);
int n=in.readInt(“inserisci num colonne”);
int[][] matrice=new int[m][n];
//inserimento di valori nella matrice
for(int i=0;i<matrice.length;i++){
for(int
j=0;j<matrice[i].length;j++){
matrice[i][j]
= in.readInt(“Elemento (“+i+”,”+j+”)?”);
}
}
//calcolo delle somme di ogni riga della matrice
int somma;
for(int i=0;i<matrice.length;i++){
somma=0;
for(int
j=0;j<matrice[i].length;j++){
somma
+=matrice[i][j];
System.out.println(“somma
della riga “+i+” = “+ somma);
}
}
array bidimensionali non matriciali
in java è possibile crare array con un numero di verso di
colonne per ogni riga
int[][] a=new int[3][];
a[0]=new int[2];
a[1]=new int[3];
a[2]=new int[4];
se mi viene passato un array frastagliato per copiarlo in un
altro
for(int i=0;i<a.length;i++){
for(int
j=0;j<a[i].length;j++){
}
}
letterali array
i letterali sono valori costanti di un certo tipo, ad esempio
se scrivo 5 identifico automaticamente un intero
posso creare un array facendo int[] a={21,23,43,56};
posso creare un array di array facendo String[][]
s={{“aaa”,”bbb”,”ccc”}, {“ddd”,”eee”,”fff”}};
Commenti
Posta un commento