Salve a tutti.
Ho estremo bisogno di un aiuto per creare una sorta di array dinamioi in modo manuale.
Sostanzialmente sto parlando di un oggetto contenente una variabile intera ed un oggetto uguale a se stesso:
Bene.codice:private int val; private Oggetto o; public Oggetto(){ val=Integer.parseInt(JOptionPane.showInputDialog("Inserire un numero")); o=null; }
Il mio problema sta nell'inserire un nuovo oggetto che creo (sempre di quel tipo) in fondo ad una lista. Per lista intendo che all'interno dell'oggetto vuoto o del primo oggetto devo inserire un altro oggetto o contenente un altra variabile intera ed un ennesimo oggetto o null, all'interno del quale dovrei inserire un'altro oggetto dello stesso tipo ecc.. continuando se posso all'infinito.
Vi posto le due classi così penso di essere più chiaro per il concetto seguente:
codice:public class Oggetto{ private int val; private Oggetto o; public Oggetto(){ val=Integer.parseInt(JOptionPane.showInputDialog("Inserire un numero")); o=null; } public void setProssimo(Oggetto p){ o=p; } public int getVal(){ return val; } public Oggetto getO(){ return o; } }Fatto ciò, per inserire all'ultimo posto il nuovo oggetto avevo pensato ad un comando simile a questo che nella mia fantasia funziona:codice:public class Array{ private Oggetto a; public Array(){ a=null; } public void aggiungiInTesta(Oggetto t){ if(a != null){ t.setProssimo(a); } a=t; } public void visualizza(){ Oggetto h=a; boolean b; do{ b=true; System.out.println(h.getVal()); h=h.getO(); if(h==null){ b=false; } } while(b==true); } public void aggiungiInCoda(Oggetto d){ ????????????? } }
Riassunto in parole povere, mi dovrebbe continuare ad eseguire getO().getO().getO()..... fino a quando non trova un oggetto null ed in questo momento copiarmi in questo il contenuto di quello che ho creato.codice:a.while(a.getO()!=null){ getO() }.setProssimo(d);
E' un ragionamento estremamente contorto ai livelli del film INCEPTION a mio parere.
Se qualcuno riesce a venirne fuori lo ringrazierò a vita.
Grazie

Rispondi quotando

