Visualizzazione dei risultati da 1 a 9 su 9

Discussione: Problema Metodo

  1. #1

    Problema Metodo

    Ciao a tutti...Ho un problema concettuale...
    Devo scrivere un metodo che prende dei dati(esempio lato di un rettangolo) e calcola l'area è la restituisce all'istruzione di stampa sul main del programma...
    Il problema consiste nel fatto che mi viene richiesto di far generare un messaggio di errore se il parametro passato(lato) è negativo..e questo devo farlo dentro il metodo..
    Ora posso far ritornare l'area con return area,ma come faccio a far stampare un messaggio di errore se il lato passato è negativo?

    Codice PHP:
    static int  areaQuadrato(int l){
            if(
    l<=0){
            return ????
            }
            else{
            
    int area=l*l;
            return 
    area;
            }
        } 
    Grazie in anticipo...

  2. #2
    Utente di HTML.it L'avatar di oronze
    Registrato dal
    Jun 2001
    Messaggi
    3,543
    Codice PHP:
    static int  areaQuadrato(int l){
            if(
    l<=0){
    System.out.println("Il lato passato è negativo");
            return 
    null;//anche se secondo me sarebbe meglio un System.exit(0);
            
    }
            else{
            
    int area=l*l;
            return 
    area;
            }
        } 

    No ai layout tabellari!

    Insulto libero: http://forum.html.it/forum/showthread.php?s=&postid=12524872#post12524872

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

    Re: Problema Metodo

    Originariamente inviato da OvettoKinder
    Ora posso far ritornare l'area con return area,ma come faccio a far stampare un messaggio di errore se il lato passato è negativo?
    No, lanci una eccezione. Puoi usare una di quelle già esistenti oppure definirne una tua. Devi sceglierla in modo che rappresenti al meglio il significato del problema.
    Potresti usare java.lang.IllegalArgumentException o definire tu un LatoNegativoException.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  4. #4
    Così facendo mi dice che non può convertire null in int...

  5. #5
    Non posso usare le eccezioni...

    Sennò già avrei fatto...

  6. #6
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da OvettoKinder
    Non posso usare le eccezioni...
    Motivo?
    Comunque a questo punto fai ritornare un valore negativo fisso, es. -1. Il chiamante controllerà: se negativo=errore altrimenti è l'area. Non vedo altro che abbia più senso ....
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  7. #7
    perchè la consegna dell'esercizio lo vieta...
    Avrei pensato anche io di fargli stampare l'errore e poi fargli ritornare -1 che corrisponde a errore...
    Ha senso?

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    502
    Originariamente inviato da OvettoKinder
    perchè la consegna dell'esercizio lo vieta...
    Avrei pensato anche io di fargli stampare l'errore e poi fargli ritornare -1 che corrisponde a errore...
    Ha senso?
    Puoi anche far ritornare un Integer: se il lato è negativo, ritorna null, altrimenti ritorna il valore.
    E il metodo potrebbe anche essere solo di una riga di codice.
    al volante son nervoso

  9. #9
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da Rubox
    Puoi anche far ritornare un Integer
    Anche questo ha senso, ammesso che lui possa cambiare il tipo di ritorno.

    Originariamente inviato da OvettoKinder
    di fargli stampare l'errore
    Concettualmente no. Perché un metodo che fa solo dei calcoli dovrebbe "sapere" dove/come stampare un errore? Se io volessi usare il tuo metodo in una applicazione Swing senza console??
    La questione è gestire gli errori e l'I/O verso l'utente al giusto "livello".

    Originariamente inviato da OvettoKinder
    e poi fargli ritornare -1 che corrisponde a errore...
    Ha senso?
    Come ho detto, questo sì.
    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.