Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1

    Invocare un metodo su un altro

    Ciao a tutti, mi sono appena iscritto. pero di aver azzeccato la sezione dove postare questa discussione. vi volevo chiedere come si fa ad invocare un metodo su un altro. mi spiego meglio. io ho un metodo che stampa una matrice tramite un doppio ciclo for. e un altro metodo che mi ritorna la matrice trasposta. quindi vi volevo chiedere coma faccio, dopo che mi sono creato una matrice, ad invocare prima il metodo che mi crea la trasposta e poi quello che mi stampa il risultato del metodo precedente?
    perchè io ho provato così (m1.trasposta().stampaMatrice()) ma mi da errore. grazie per le risposte!

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

    Re: Invocare un metodo su un altro

    Originariamente inviato da eddy_91
    vi volevo chiedere coma faccio, dopo che mi sono creato una matrice, ad invocare prima il metodo che mi crea la trasposta e poi quello che mi stampa il risultato del metodo precedente?
    perchè io ho provato così (m1.trasposta().stampaMatrice()) ma mi da errore. grazie per le risposte!
    Funzionerebbe se (e ripeto se) trasposta() restituisse un oggetto es. Matrice e questa classe avesse un metodo di istanza stampaMatrice(). Altrimenti ovviamente no, le cose vanno fatte diversamente.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    praticamente il metodo trasposta() mi ritorna una matrice di interi. e il metodo stampaMatrice() è in grado di stampare una matrice di interi. non so se sto dicendo quello che intendi tu è che sono alle prime armi. eheheh

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da eddy_91
    praticamente il metodo trasposta() mi ritorna una matrice di interi.
    Ok ma cosa è? Un int[][] o un tuo oggetto di classe es. Matrice che "modella" la matrice?
    Nel primo caso non puoi fare nulla in quel senso. Non puoi aggiungere metodi ad un oggetto array!
    Nel secondo caso sì, potresti definire nella tua Matrice un metodo di "istanza" chiamato stampaMatrice().

    Altrimenti l'unica cosa che puoi fare è avere un metodo stampaMatrice che riceve come argomento la matrice (qualunque cosa sia).
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    praticamente io ho il costruttore che mi crea un oggetto matrice con una matrice di interi come variabile e poi i metodi agiscono sull'oggetto. scusami ma non che che sto capendo più di tanto quello che diciXD

  6. #6
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da eddy_91
    praticamente io ho il costruttore che mi crea un oggetto matrice con una matrice di interi come variabile e poi i metodi agiscono sull'oggetto. scusami ma non che che sto capendo più di tanto quello che diciXD
    Se hai fatto una classe es. Matrice, allora puoi metterci il stampaMatrice:

    codice:
    public class Matrice {
        private int[][] mat;
    
        //.... altro: costruttore/i, getter/setter, ecc....
    
        public void stampaMatrice() {
            // ... stampa i dati ...
        }
    }
    Allora sì, in una situazione come:

    unaMatrice.stampaMatrice();

    oppure

    metodoCheRitornaMatrice().stampaMatrice();

    puoi stampare la matrice.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  7. #7
    codice:
    public void stampaMatrice(){
    		for(int i=0; i<mtr.length; i++){
    			for(int j=0; j<mtr[0].length; j++){
    				System.out.print(mtr[i][j]);
    			}
    			System.out.println();
    		}
    	}
    questo è il metodo di stampa. solo che se gli passo una matrice non me la stampaXD

  8. #8
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da eddy_91
    codice:
    public void stampaMatrice(){
    		for(int i=0; i<mtr.length; i++){
    			for(int j=0; j<mtr[0].length; j++){
    				System.out.print(mtr[i][j]);
    			}
    			System.out.println();
    		}
    	}
    questo è il metodo di stampa.
    Ma dove è questo metodo? Ma hai visto il mio esempio? stampaMatrice() nel mio esempio è un metodo di istanza di Matrice. Allora su un qualunque riferimento (non null, chiaramente) ad un oggetto Matrice (che sia una variabile o il valore di ritorno di un metodo) puoi invocare stampaMatrice().

    Originariamente inviato da eddy_91
    solo che se gli passo una matrice non me la stampaXD
    Il metodo che hai appena passato non ha parametri.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  9. #9
    il metodo stampa si trova nella classe matrice. mentre io tutte le operazioni le sto facendo tramite una classe cliente della classe matrice

  10. #10
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da eddy_91
    il metodo stampa si trova nella classe matrice.
    E allora è come il mio esempio, puoi invocare stampaMatrice su un oggetto Matrice (ripeto, che sia una variabile o ritornato da un metodo non ha importanza).
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

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.