Allora, ho fatto qualcosa ma mi sono bloccato.
public class MainArray {
int n = 0; // dimensione del main array
int used = 0; // spazio usato sulla quantità n
ElementArray[] element;
MainArray(int n) {
this.n = n;
element = new ElementArray[n];
}
public int getSize() {
return used;
}
public boolean isEmpty() {
if (used == 0)
return true;
return false;
}
public void add(int capacity, Colours c) throws MainArrayOutOfBoundException, ElementArrayOutOfBoundException {
if (used >= n)
throw new MainArrayOutOfBoundException("Il Main Array è pieno, non è possibile inserire un nuovo elemento");
ElementArray elemento = new ElementArray(capacity);
element[used] = elemento;
used++;
}
}
public class ElementArray {
Colours[] colore;
int size = 0;
ElementArray(int size) {
this.size = size;
colore = new Colours[size];
System.out.print("L'element array ha dimensione massima: " + size);
}
public int dimensione() {
return size;
}
}
Dovrei lanciare l'exception nel metodo add per il quale l'element array è pieno ma non so come gestire il riempimento di quest'ultimo.
Edit: è in definitiva un array che per ciascun indice ha un array. Quindi, se l'elemento inserito è BIANCO e il l'ultimo elemento dell'element array è NERO, viene creato un nuovo indice nel main array per cui viene inizializzato un array di NERO. Ovviamente manca il Main, queste sono le due classi da gestire