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

Langage Java Discussion :

les methodes (Object... param)


Sujet :

Langage Java

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2006
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 21
    Points : 22
    Points
    22
    Par défaut les methodes (Object... param)
    bonjour tout le monde,
    j'ai vu dans des applications l'utilisation de méthode de la syntaxe suivante:
    nom_methode(Object... param)
    j'aimerai bien savoir son fonctionnement (j 'ai une idée que c un nombre infinie de paramètres) surtout comment récupérer ses paramètres et les traiter selon leur type???

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 85
    Points : 81
    Points
    81
    Par défaut Nouveautés Tiger
    Salut,

    Il s'agit d'une nouveauté du JDK 1.5, c'est les méthodes à arguments
    variables. Tu aura plus d'infos dessus à cette adresse :

    http://lroux.developpez.com/article/...e_2#Larguments

    a+
    Xavier

  3. #3
    Membre à l'essai
    Inscrit en
    Avril 2006
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 21
    Points : 22
    Points
    22
    Par défaut
    merci pour les infos mais comment traiter les infos dynamiquement??
    si g 2 param je fait ...
    si g 3 param je fait ...
    si 100 je fait.... mais d'une facon dynamique et pas avec trop de if

  4. #4
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,


    Les ellipses ne sont en fait que des tableaux, et c'est le compilateur qui met automatiquement tous les paramètres dans un tableau...

    Donc il te suffit de traiter ce tableau comme tu le souhaites, par exemple :
    Code java : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
        public void method (Object...params) {
            System.out.println("Nombre de paramètre : " + params.length);
            int i = 0;
            for (Object obj : params) {
                if (obj==null) {
                    System.out.println("Le paramètre [" + i + "] est null !!!");
                } else {
                    System.out.println("Le paramètre [" + i + "], de type '" 
                        + obj.getClass().getSimpleName() + "' vaut '" + obj + "'.");
                }
                i++;
            }
        }

    a++

  5. #5
    Membre à l'essai
    Inscrit en
    Avril 2006
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 21
    Points : 22
    Points
    22
    Par défaut
    oui g deja réalisé ceci mais g toujours un probleme en faisnat le casting de l'objet vers le type d'objet dont je veux utiliser l'une de ses méthodes

  6. #6
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par slouma_b_h
    oui g deja réalisé ceci mais g toujours un probleme en faisnat le casting de l'objet vers le type d'objet dont je veux utiliser l'une de ses méthodes
    Quel problème ???? On ne peux pas deviner !

  7. #7
    Membre à l'essai
    Inscrit en
    Avril 2006
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 21
    Points : 22
    Points
    22
    Par défaut
    le probleme c que je ne sais pas quel objet je vais avoir dans les arguments pour lui appliqué le casting adequat pour pouvoir utiliser ses methodes. j'espère être assez clair maintenant

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 760
    Points : 626
    Points
    626
    Par défaut
    Tu n'est pas obligé de faire Object ... Ce sont des arguments c'est tout.
    MyObject ... fonctionne également si tu defini une classe MyObject.
    Après tu reçois ce que tu précise dans ton contrat. L'ellipse n'est utile que dans certains types de fonctions.
    L'Ellipse n'est pas necessaire pour faire un "polymorphisme paramétrique". Autant faire une fonction pour chaque type...
    Bref, explique ton problème et on pourra peut etre le resoudre si ce n'est déjà fait.

Discussions similaires

  1. Besoin de précisions les methodes techniques
    Par you98 dans le forum UML
    Réponses: 5
    Dernier message: 15/10/2005, 15h25
  2. Afficher les shared objects utilisés
    Par Onarap dans le forum Linux
    Réponses: 5
    Dernier message: 20/05/2005, 15h31
  3. [C#] Variables accessibles à toutes les méthodes
    Par defacta dans le forum ASP.NET
    Réponses: 2
    Dernier message: 06/05/2004, 11h20
  4. [VB6]Enumérer les attributs et les méthodes d'une classe
    Par HPJ dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 04/05/2004, 18h34
  5. [JUnit] Pour tester les methodes d'acces à une sgdb
    Par yanis97 dans le forum Tests et Performance
    Réponses: 2
    Dernier message: 15/04/2004, 15h55

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