[java] méthode qui retourne plusieurs valeurs

Fermé
ny - 18 nov. 2012 à 13:04
tjanh123 Messages postés 8 Date d'inscription mardi 20 novembre 2012 Statut Membre Dernière intervention 15 mai 2013 - 21 nov. 2012 à 15:40
Bonjour,
est-ce-qu'il est possible qu'une méthode java retourne plusieurs valeurs (du meme type) ?
J'ai essayé ça mais ça ne marche pas:

int 1;
int 2;

 public int touche() {
...
return 1;
return 2;
}


merci de vos réponses

A voir également:

2 réponses

KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 3 015
18 nov. 2012 à 13:19
Pas de cette manière, mais il est possible d'utiliser des objets qui contiennent plusieurs valeurs, des tableaux par exemple.

Attention : 1 et 2 ne peuvent pas être utilisés comme noms de variables, il faut que ça commence par une lettre.

int i1;
int i2;

public int[] touche()
{
    // ...
    int[] resultat = {i1, i2};
    return resultat;
}
2
ok merci j'essaie ça
0
et ensuite je peux utiliser i1, i2 sans autre ou je dois les sortir de resultat ?
0
KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 3 015
18 nov. 2012 à 13:59
Ici i1 et i2 sont encore accessibles mais leurs valeurs auront peut-être changées entre-temps, il vaut mieux sortir les valeurs du tableaux (qui ne s'appellera plus resultat)

public class Test
{
    int i1 = 1;
    int i2 = 2;

    public int[] touche()
    {
        i1 = 10;
        i2 = 20;
        int[] resultat = {i1, i2};
        i1 = 100;
        i2 = 200;
        return resultat;
    }

    public static void main(String[] args)
    {
        System.out.println(i1); // 1
        System.out.println(i2); // 2
        
        int[] tableau = touche();
        
        System.out.println(i1); // 100
        System.out.println(i2); // 200
        
        System.out.println(tableau[1]); // 10
        System.out.println(tableau[2]); // 20
    }
}
0