Signaler

Java return 2 valeurs [Fermé]

Posez votre question The Hawk - Dernière réponse le 22 juil. 2010 à 12:49 par Tibo-k3
Bonjour,
je voudrais savoir comment faire pour retourner 2 valeurs en même temp (si sa se peut)
Afficher la suite 
Utile
+3
plus moins
Moi ce que je fais, même si je sais que ce n'est pas très propre, mais je n'ai pas encore trouvé de meilleurs solution, si je veux retourner plusieurs choses différentes :

public Object[] maFonction()
{
// Implémentation
Object[] monResultat = { truc1 , truc2 };
return monResultat;
}

Ensuite pour l'utiliser :

Object[] coucou = maFonction();
TypeDeTruc1 machin1 = (TypeDeTruc1) coucou[0];
TypeDeTruc2 machin2 = (TypeDeTruc2) coucou[1];

Ainsi tu peux retourner par exemple, un Double et une String en même temps.

Attention : apparament, on ne peut pas caster les éléments de Object avec des types primitifs :
(int) coucou[0] => marche pas ! Faire : (Integer) coucou[0]

Voila... En attendant de trouver un truc moins crade ^^
Cette réponse vous a-t-elle aidé ?  
Utile
+2
plus moins
Salut,

je pense que pour l"idée d'un tableau contenant tes 2 valeurs, tu avais saisie. Mon autre idée dépend de ton code, si tu retourne 2 valeurs qui à elle seul serai utilise de placer dans un classe, tu retournerai donc cet objet.

Je sais c'est pas clair comme explication.
tarek_dotzero 710Messages postés jeudi 19 juillet 2007Date d'inscription 2 mars 2017 Dernière intervention - 26 avril 2008 à 10:43
Ou il peut créer un objet de type Propeties, ou un objet personnalisé...
Bref il y a plusieurs solutions
Utile
+0
plus moins
Salut,

soit tu retourne un tableau de 2 valeur (un peu crade) soit tu analyse un peu mieux et tu essaye de crée un objet. Si non il y a pas d'autre solution.
Utile
+0
plus moins
tu pe pas etre un peu plus precis sur ce que tu ve faire stp?
Utile
+0
plus moins
public class Connect {

private monID monId;


public monID get() {.........................


*******************************************************
public class monID {

private Integer droit ;
private String email;
/**
* @param droit the droit to set
*/
public void setDroit(Integer droit) {
this.droit = droit;
}
/**
* @return the droit
*/
public Integer getDroit() {
return droit;
}
/**
* @param email the email to set
*/
public void setEmail(String email) {
this.email = email;
}
/**
* @return the email
*/
public String getEmail() {
return email;
}
}

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !