IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

Notion de retourner une valeur


Sujet :

avec Java

  1. #1
    Membre confirmé
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2014
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2014
    Messages : 61
    Par défaut Notion de retourner une valeur
    Bonjour,

    Débutant avec le langage JAVA, j'ai une petite question sur la notion de renvoyer une valeur ou pas avec "VOID";

    Mon code tout simple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    public class Demo {
     
        public static void test(int value ) 
        {
            while( value > 0 ) {
                System.out.println( value-- ); 
            }  
        }
     
        public static void main( String [] args ) {
            Demo.test(5);       
        }
    }
    Dans la méthode "test" il est indiqué "void" juste avant; cela signifie bien que je ne retourne aucune valeur si j'ai bien compris ?
    Mais la valeur "value" est bien affiché par la suite ! donc cela retourne bien quelque chose ?

    Merci

  2. #2
    Membre chevronné
    Homme Profil pro
    Ingénieur en génie logiciel
    Inscrit en
    Juin 2012
    Messages
    944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur en génie logiciel
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juin 2012
    Messages : 944
    Par défaut
    il faudrait que tu mettes la balise code pour bien formatter ton code


    ta méthode retourne rien,

    System.out.println( value-- );
    est dans ta méthode

  3. #3
    Membre confirmé
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2014
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2014
    Messages : 61
    Par défaut
    Merci

    Ok pour les balises.

    Donc si je comprend bien, du fait que les valeurs sont affichées dans ma méthode, cela ne retourne rien ?
    Si elles auraient été affichées ailleurs cela retourné la valeur ?

    Est ce bien ca ?

  4. #4
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 713
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 713
    Par défaut
    Citation Envoyé par quattro Voir le message
    du fait que les valeurs sont affichées dans ma méthode, cela ne retourne rien ?
    Si elles auraient été affichées ailleurs cela retourné la valeur ?
    Aïe, le raisonnement est confus. Je vais essayer de tout remettre à plat.

    1) l'instruction System.out.println
    Tout d'abord, l'instruction System.out.println est là seulement pour le développeur.
    Elle sert uniquement à visualiser sur la console des messages ou le contenu de variables pour vérifier que le programme tourne bien.
    (Dans ton cas, tu dois avoir un simple compte à rebours qui s'affiche sur la console).

    2) Méthode de type void :
    C'est une méthode qui exécute une tâche sans renvoyer de valeur. Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
        public static void ditBonjour() 
        {
            JOptionPane.showMessageDialog(null, "Bonjour !");
        }
    Dans cet exemple, la méthode affiche une boîte de dialogue avec "Bonjour" mais elle ne renvoie pas de valeur.

    3) Méthode qui renvoie une valeur :
    C'est une méthode qui est obligée de nous retourner une valeur quand on l'utilise.
    Par exemple si on veut qu'une méthode fasse l'addition de 3 valeurs et nous donne le résultat alors on va écrire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        public static int additionne(int a, int b, int c) {
            int monResultat;
            monResultat = a + b + c;
            return monResultat;
        }
    On indique "int" pour spécifier la nature de la valeur qui sera renvoyée par le "return".
    La méthode additionne fait son travail mais n'affiche pas le résultat.
    On peut demander à un méthode void de le faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
        public static int additionne(int a, int b, int c) {
            int monResultat;
            monResultat = a + b + c;
            return monResultat;
        }    
     
        public static void donneLeResultat() {
            int monCalcul = additionne(10, 12, 76);
            JOptionPane.showMessageDialog(null, "Le résultat est : " + monCalcul);
        }
    Et le code complet :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    import javax.swing.JOptionPane;
     
    public class MaDemo {
     
        public static void main(String[] args) {
            donneLeResultat();
        }
     
        public static void ditBonjour() {
            JOptionPane.showMessageDialog(null, "Bonjour !");
        }
     
        public static int additionne(int a, int b, int c) {
            int monResultat;
            monResultat = a + b + c;
            return monResultat;
        }
     
        public static void donneLeResultat() {
            int monCalcul = additionne(10, 12, 76);
            JOptionPane.showMessageDialog(null, "Le résultat est : " + monCalcul);
        }
    }
    Labor improbus omnia vincit un travail acharné vient à bout de tout - Ambroise Paré (1510-1590)

    Consulter sans modération la FAQ ainsi que les bons ouvrages : http://jmdoudoux.developpez.com/cours/developpons/java/

  5. #5
    Membre confirmé
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2014
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2014
    Messages : 61
    Par défaut
    Bonjour,

    Merci c'est très claire

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [vb.net] retourner une valeur dans l'evenement click
    Par graphicsxp dans le forum Windows Forms
    Réponses: 3
    Dernier message: 27/05/2005, 13h06
  2. [VB.Net]Procédure Stocké retournant une valeur
    Par waldo2188 dans le forum ASP.NET
    Réponses: 2
    Dernier message: 03/05/2005, 12h56
  3. Réponses: 7
    Dernier message: 15/03/2005, 14h44
  4. fonction retournant une valeur
    Par ryan dans le forum ASP
    Réponses: 4
    Dernier message: 06/09/2004, 17h45
  5. Retourner une valeur avec une fonction
    Par stephtbest dans le forum ASP
    Réponses: 4
    Dernier message: 31/10/2003, 16h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo