Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Java: Passaggio dei parametri

    Codice PHP:
    public class zzz {

        public static 
    void main(String[] args) {
            
            
    String oggetto = new String();
            
    oggetto "valore 1";
            
            
    funzione1(oggetto);
            
            
    System.out.println("Oggetto contiene: '" oggetto "'");
        }
        
        public static 
    void funzione1(String str) {
            
    str "valore 2";
        }
        
        

    Come mai il risultato stampato sulla console è "valore 1" anzichè "valore 2"?
    Ho provato a documentarmi ed ho trovato questa pagina molto esaustiva, secondo la quale però il risultato del codice soprascritto dovrebbe essere "valore 2".

    In che cosa sbaglio?

    Grazie.
    Think global, act local.

  2. #2
    Utente di HTML.it L'avatar di shodan
    Registrato dal
    Jun 2001
    Messaggi
    2,381
    Nel forum.
    Quello di Java è più sù

  3. #3
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,254

    Re: Java: Passaggio dei parametri

    Originariamente inviato da index
    Come mai il risultato stampato sulla console è "valore 1" anzichè "valore 2"?
    Perché in Java il passaggio dei parametri avviene sempre per valore. Non esiste un passaggio per indirizzo o riferimento.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

  4. #4
    Il passaggio per valore esiste solo per i tipi di dati elementari; per qualsiasi tipo di oggetto Java utilizza il passaggio per riferimento.
    Questo è quello che io sapevo, e in virtù del quale ho ritenuto di poter scrivere quel codice e conseguentemente di poter ricevere in output su console "valore 2".

    In quale modo posso modificare il codice affinchè il risultato atteso sia "valore 2".

    PS. L'esempio sopra fornito è una semplificazione del mio reale problema.
    Think global, act local.

  5. #5
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,325

    Moderazione

    E' stata aperta anche questa discussione, che si trova nell'area giusta.

    Ricordo che il crossposting è vietato.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

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.