Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di bako
    Registrato dal
    Feb 2004
    Messaggi
    1,797

    [java] Object per riferimento

    Devo passaare delle variabili per rifermiento..
    Ho provato con gli int, ma non vanno ho provato con gli object ma nulla.

    codice:
    +-------- Classe Pila -----------+
    ... junk .. 
      public boolean estrai(Object o){
      if (isEmpty()) return false; 
      else {
       o=contenuto[--marker];
       return true ;
      }
      }
    ... junk .. 
    +--------------------------------+
    +-------- Classe Chiamante-------+
    myW è la finestra 
    Object out=null;
    if (myW.p.estrai(out)) {
        myW.txt.append("pop: "+ out +"\n");
         }
        else     {
        myW.txt.append("Pila vuota\n");
        }
       }
    +--------------------------------+
    stampa sempre null!
    come faccio?

  2. #2
    Ma controlla che sia vuoto cosa?? isEmpty() su che cosa lo usi?
    Si può vincere o perdere, l'importante è vincere o perdere da uomini...

    Neverland - Il mio Forum

  3. #3
    Utente di HTML.it L'avatar di bako
    Registrato dal
    Feb 2004
    Messaggi
    1,797
    quello funziona controlla se il marker è 0..
    il problema è passare una variabile per riferimento!!!
    tipo gli int
    codice:
    int a=5;
    Prova.somma(a);
    system..println(a); qui stampa 5 invece che 10
    
    
    classe prova
    public void somma a (int n){
    return a+a;
    }
    come si fa?

  4. #4
    in java è implicitamente e obbligatoriamente passato TUTTO per riferimento (almeno per gli oggetti).
    Ci sono cose che non si possono sapere. Per tutto il resto c'è man

    Prima di fare domande stupide: 1) googla 2) leggi le manpages 3) sparati.

  5. #5

    classe prova
    public void somma a (int n){
    return a+a;
    }

    [/CODE]
    come si fa?
    un void non deve ritornare niente...

  6. #6
    Utente di HTML.it L'avatar di bako
    Registrato dal
    Feb 2004
    Messaggi
    1,797
    Originariamente inviato da valer_85
    un void non deve ritornare niente...
    di ho sbagliato a scrivere.. la funzione restituisce un int.. ma nn va ugualmente

  7. #7
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    int a=5;
    a = Prova.somma(a);
    System.out.println(a);

  8. #8
    solo gli oggetti vengono passati per riferimento

    codice:
    class prov{
       public int x;
       public String toString(){ return new Integer(x).toString(); };
    }
    
    public class provaref{
      public static void incrementa(prov uno, prov due)
       {
         uno.x++;
         due.x++;
       }
    
      public static void main(String[] args)
       {
         prov x=new prov(), y=new prov();
         x.x=5; y.x=10;
         incrementa(x,y);
         System.out.println(x+" "+y);  //stampa 6, 11
       }
    
    }
    Kaworu.it
    Bookmarks on line i tuoi preferiti ovunque
    il tempo è il miglior dottore.....solo che è parecchio lento ...troppo lento
    wxKonTEXT Editor di testi(linux, win e mac), new version

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 © 2024 vBulletin Solutions, Inc. All rights reserved.