Salve a tutti, mi sto infrenando su una cosa semplicissima, devo spiegare il funzionamento di array di oggetti per cui ho digitato il seguente codice, in cui ho definito un'array di MOVIMENTI
codice:
package pac;
public class Correntista {
private String contoCorrente = new String ();
private String correntista = new String();
private String indirizzo = new String();
private Movimenti[] mov = new Movimenti[30];
private int i=0;
public void setContoCorrente (String contoCorrente){
this.contoCorrente=contoCorrente;
}
public String getContoCorrente (){
return contoCorrente;
}
public void setCorrentista (String correntista){
this.correntista=correntista;
}
public String getCorrentista (){
return correntista;
}
public void setIndirizzo (String indirizzo){
this.indirizzo=indirizzo;
}
public String getIndirizzo(){
return indirizzo;
}
public String getDati(){
return new String ("Conto corrente= "+contoCorrente+"\nCorrentista = "+correntista+"\nIndirizzo = "+indirizzo);
//mi restituisce in stringa tt i dati salvati in precedenza
}
public void setMovimento(Movimenti movimento){
mov[i]= movimento;
System.out.println("indice="+i+" causale="+mov[i].getCausale());
System.out.println("indice0=" causale="+mov[0].getCausale());
i++;
}
public String getMovimento(int i){
System.out.println("indice="+i);
return new String ("causale = "+mov[0].getCausale()+"\n Importo = "+mov[0].getImporto());
}
}
codice:
package pac;
public class Movimenti {
private String causale = new String();
float importo=0;
public void setCausale (String causale){
this.causale=causale;
}
public String getCausale (){
return causale;
}
public void setImporto (float importo){
this.importo=importo;
}
public float getImporto (){
return importo;
}
}
Dopodiche con il metodo setMovimento la popolo,lo strano che non riesco ha capire perche
nell'ndice 0 metto un valore ed è ok, quando metto un valore nell'indice 1 lo stesso valore me lo mette nell'indice 0, quando metto un valore nell'indice 2 lo stesso valore me lo mette nell'indice 0 ed 1 come riportato nel println qui sotto.
codice:
indice=0 causale=Apertura cc
indice0=causale=Apertura cc
indice=1 causale=Spese bollo
indice0=causale=Spese bollo
indice=2 causale=Spese auto
indice0=causale=Spese auto