Scusate il ritardo e grazie intanto per l'interesse..
Effettuando il test la console rileva che il problema lo da proprio la linea relativa a :
codice:
arrayottenuto[k] = (String)listaricettecorrettamenu.get(i);
allo stesso modo dà problemi in altre righe contenute in altre classi...per ora sono interessato a capire se il problema risiede nel codice postato prima.
Di seguito il codice..
codice:
public class CreaMenuRicette {
public void CreazioneMenu(ArrayList listaricettecorrettadacontrollare,String[] arrayottenuto){
ArrayList listaricettecorrettamenu= new ArrayList();
int i=0;
int n_linee=1;
//Adesso creiamo la lista di ricette che apparirà nel menù a tendina
//in automatico il primo elemento è una ricetta..effettiamo un controllo per gestire questo caso
listaricettecorrettamenu.add((String)listaricettecorrettadacontrollare.get(i));
System.out.println("Ho aggiunto:"+listaricettecorrettadacontrollare.get(i));
for(i=1;i<listaricettecorrettadacontrollare.size();i++){
//controlliamo se una ricetta è finita o meno
String stringacontrollo=(String)listaricettecorrettadacontrollare.get(i);
if(stringacontrollo.endsWith("ricetta")){
//è la fine della ricetta, aggiungiamo 1 a i e aggiungiamo la lista successiva se i non è uguale al .size
i=i+1;
if(i==listaricettecorrettadacontrollare.size()){
//siamo alla fine,era l'ultima ricetta.Abbiamo finito.
}else{//c'è ancora un' altra ricetta.Aggiungiamola
listaricettecorrettamenu.add((String)listaricettecorrettadacontrollare.get(i));
System.out.println("abbiamo aggiunto la ricetta"+((String)listaricettecorrettadacontrollare.get(i)));
n_linee=n_linee+1;
}
}else{
//non è puntata la fine della ricetta..avanziamo tra gli alimenti fino ad ottenere la fine di una ricetta
for (int k = 0; k < n_linee; k++ ){
arrayottenuto[k] = (String)listaricettecorrettamenu.get(i);
}
}
}
//fuori dal ciclo for
// }
}
}
Ho deciso di postare l'intero codice...se volete delucidazioni riguardo alcuni passaggi basta che lo chiediate.
Grazie in anticipo!