Ciao a tutti, sto facendo un piccolo programma di gestione di cabine per un lido e sto avendo un problema molto strano con un array dinamico.
Vi spiego nei dettagli:
L'array dinamico si chiama mappaCabina ed è un attributo della classe Gui.
Ho un oggetto chiamato cabina che prevede, le coordinate XY della cabina, il numero e il settore.
Ho creato una funzione che automaticamente si va a prendere le coordinate delle cabine disegnate su di un immagine (coordinate che mi serviranno successivamente per un altro lavoro) .
Dentro questa funzione c'è un ciclo FOR che effettua questo lavoro.
E qui arriva l'errore.
Alla fine del ciclo l'ultimo oggetto che viene inserito viene sovrascritto su tutti quelli aggiungi precedentemente e non riesco a capire per quale motivo.
Se controllo i dati contenuti nell'array nel debug i dati fino all'ultimo inserimento sono tutti corretti e presenti, ma appena esco dal ciclo o dalla funzione vengono tutti sostituiti con l'ultimo inserito.
Vi posto il codice:
Su google non ho trovato niente e neanche nel forum, qualcuno mi può aiutare???codice:public void calcolaCoordinateFila(int x, int y, int nFila, String settore){ int w = 27; int numero = 1; Cabina c = new Cabina(); c.x = x; c.y = y; c.numero = 1 + nFila; c.settore = settore; mappaCabina.addElement(c); for(int j = 0; j < 13; j++){ x = x - w; numero = (numero+1) + nFila; c.x = x; c.y = y; c.numero = numero; c.settore = settore; mappaCabina.addElement(c); } }

Rispondi quotando