Salve,
sto cercando di creare un arraylist di array standard interi. Ho fatto qualche prova mirata a prendere confidenza con la struttura arraylist, ma giungo ad un punto dove non capisco dove stia il problema:
codice:import java.util.ArrayList; public class main { public static void main(String[] args) { // Passo 1: prova di base di riempimento e scrittura di ArrayList System.out.println("Passo 1: prova di base di riempimento e scrittura di ArrayList"); ArrayList arraymosse= new ArrayList(9); for (int i=0; i<10; i++) { arraymosse.add(i); } for (int i=0; i<arraymosse.size(); i++) { System.out.println(arraymosse.get(i)); } // Passo 2: prova di riempimento di ArrayList con vettore int System.out.println("Passo 2: prova di riempimento di ArrayList con vettore int"); int []arrayOfXY = new int [2]; ArrayList arraymosse2= new ArrayList(9); for (int i=0; i<3; i++) { for (int j=0; j<3; j++) { arrayOfXY[0]=i; arrayOfXY[1]=j; arraymosse.add(arrayOfXY); } } System.out.println("Passo 3: prova di stampa standard di ArrayList con vettore int"); for (int i=0; i<arraymosse.size(); i++) { System.out.println(arraymosse.get(i)); } System.out.println("Passo 4: prova di stampa a doppio ciclo di ArrayList con vettore int"); for (int i=0; i<arraymosse.size(); i++) { for (int j=0; j<2; j++) { System.out.print(arraymosse.get(i[j])); System.out.print(" & "); } } } }
Siccome ho un Arraylist di array interi di 2 elementi, l'elemento dell'arraylist nella iesima posizione dovrebbe essere dato da arraymosse.get(i). Ma siccome quell'elemento è a sua volta un array di interi di 2 elementi, con arraymosse(i[j]) dovrei riuscire ad estrarre il jesimo elemento dell'iesimo vettore.
Invece, proprio nella riga:
System.out.print(arraymosse.get(i[j]));
viene dato l'errore:
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
The type of the expression must be an array type but it resolved to int .
Come posso fare per indicizzare gli elementi dell'array nell'arraylist? E se avessi un array di arraylist di array, come potrei fare?
Grazie a tutti!


Rispondi quotando