Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    142

    [Java]Creazione di piu classi per un diario

    Salve a tutti come avrete capito sto realizzando per la scuola un diario in modalità console, non grafica. Il mio problema è che ho creato una classe di nome pagina inserendogli tutti i metodi inerenti ad una pagina, solo che adesso essendo che si tratti di una pagina dovrei avere tante copie di quelle pagine ecco:
    codice:
    private Pagina pagine[];//questa e la dichiarazione di un tipo di quella classe
    Diario(){
      pagine = new Pagina[365];//qui inizializzo l array con la cifra di 365 perche mi servono 365 pagine
    }
    public void setPagina(Pagina r1){ //gli errori a mio parere sono qui perche se provo a mandare in esecuzione mi viene restituito l indirizzo di memoria in cui e stato instanziato l oggetto "pagina" perche ovviamente ho istanziato l oggetto "pagina" in una classe main 
      pagine[npag] = r1;
    }
    public Pagina getPagina(){
      return pagine[npag];	
    }
    Sapreste darmi qualche aiuto in merito ve ne sarei grato grazie!!

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328

    Moderazione

    Ho spostato la discussione nel forum Java.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    142
    Nessuno che riesce ad aiutarmi???

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    143
    io ci proverei volentieri a darti una mano ... se solo riuscissi a capire di cosa hai bisogno ...

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    142
    Devo costruire un diario e ovviamente ho costruito una classe Pagina ma un diario non è formato da una sola pagina ma bensi da 365 o meno se si tratta di una agenda.
    Quello che chiedo è aiuto su come avere piu pagine del diario visto che ne ho solo una, ovvero quella della classe Pagina.

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    143
    guarda, oltre a spiegare di cosa hai bisogno, prova a spiegare un attimo meglio la struttra della classe Pagina...insomma rendi la cosa un po' più chiara, altrimenti è difficile aiutarti ... non so, posta un po' di codice ..

  7. #7
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    142
    codice:
    public class Pagina {
    	private String giorno;
    	private String mese;
    	private String data;
    	private String righe[];
    	private int nrighe;
    	private int npagina;
    
    	Pagina(){
    		giorno = "";
    		mese = "";
    		data = "";
    		righe = new String[10];
    		nrighe = 0;
    		npagina = 0;
    	}
    	public void setNpagina(int pag){
    		npagina = pag;
    	}
    	public int getNpagina(){
    	   return npagina;
    	}
    	public void setGiorno(String G){
    		giorno = G;
    	}
    	public String getGiorno(){
    		return giorno;
    	}
    	public void setMese(String M){
    		mese = M;
    	}
    	public String getMese(){
    		return mese;
    	}
    	public void setData(String d){
    		data = d;
    	}
    	public String getData(){
    		return data;
    	}
    	public void setRiga(String r){
    			righe[nrighe] = r; 
    			nrighe++;
    	}
    	public String getRiga(){
    		if(nrighe < 10){
    			for(int i=0;i<10;i++){
    				return righe[i];	
    			}
    		}
    		else{
    			System.out.println("Hai superato le 10 righe");
    		}
    		return null;
    	}
    		
    
    }
    ecco questa è la mia classe Pagina. Ora io vorrei averne di codeste pagine altre 365....che consiglio mi date?

  8. #8
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    ma chi sarebbe nel tuo metodo
    codice:
    public void setPagina(Pagina r1){ //gli errori a mio parere sono qui perche se provo a mandare in esecuzione mi viene restituito l indirizzo di memoria in cui e stato instanziato l oggetto "pagina" perche ovviamente ho istanziato l oggetto "pagina" in una classe main 
      pagine[npag] = r1;
    }
    npag ? non mi sembra sia inizializzato da nessuna parte?
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  9. #9
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    142
    vedi la mia ultima risposta quello e il codice della classe

  10. #10
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    105
    Ciao G, La domanda di andrea e pertinete... cosa é npage nella classe diario.
    Posta anche la classe diario e quella dove lanci il programma....
    Sara piu facile aiutarti....

    Cmq come avevi iniziato va bene....

    io farei cosi..
    codice:
    class Diario{
    private Pagina pagine[];
    private int paginaCorrente = 0;
    
    Diario(){
      pagine = new Pagina[365];
    //!!! Qua ricorda che hai creato un Array di Pagine non le pagine quindi fai un metodo privato che inizializza le pagine.... con i mesi giorni etc....
    }
    
    public Pagina prossimaPagina(){
    //
    paginaCorrente++;
    }
    
    public Pagina paginaPrecedente(){
    //
    paginaCorrente--;
    }
    
    public Pagina vaiAPagina(int pageNumber){
    //
    }
    }
    Questo in grandi lineee e come mi e venuto in mente ci possono essere anche altre soluzioni

    Per la classe pagina ...

    codice:
    	public String getRiga(){
    		if(nrighe < 10){
    			for(int i=0;i<10;i++){
    				return righe[i];	
    			}
    		}
    		else{
    			System.out.println("Hai superato le 10 righe");
    		}
    		return null;
    	}
    Questo metodo se le righe sono < di 10 non ti ritorna sempre la prima ???

    Una cosa carina da aggiungere e fare l Ovverride del metodo toString(); e stampare a schermo la pagina intera
    Ciao buona giornata

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.