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

Collection et Stream Java Discussion :

chercher un max et min dans une liste de type vector


Sujet :

Collection et Stream Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Avril 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 8
    Par défaut chercher un max et min dans une liste de type vector
    Bonjour,

    j'ai crée une liste de type vector , qui contient des objets de type entier ( Integer), comment parcourir ma liste pour trouver le maximum et le minimum?


    merci.

  2. #2
    Rédacteur
    Avatar de CyberChouan
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    2 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 752
    Par défaut
    Le type Vector est "vieux" et date d'anciennes versions de JAVA.

    Si tu n'es pas obligée d'utiliser ce type d'objets, je te suggère vivement de le remplacer par une ArrayList.

    Si tu tiens vraiment à utiliser un Vector, voici un bout de code qui devrait t'aider:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    public Integer getMax(Vector v) {
       Integer result = Integer.MIN_VALUE;
       Integer temp = null;
       for(int i=0; i<v.size(); i++) {
          temp = (Integer) v.get(i);
          if(temp.intValue() > result.intValue()) { result = temp; }
       }
       return result;
    }
    Evidemment, tu peux t'en inspirer pour écrire une méthode getMin().

    Au passage, si tu changes ton Vector en une ArrayList (ou une LinkedList), le code ci-dessus marche encore: il suffit de changer le type du paramètre de la méthode
    Avant de poster, pensez à regarder la FAQ, les tutoriaux, la Javadoc (de la JRE que vous utilisez) et à faire une recherche
    Je ne réponds pas aux questions techniques par MP: les forums sont faits pour ça
    Mes articles et tutoriaux & Mon blog informatique

  3. #3
    Membre émérite Avatar de remika
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    806
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 806
    Par défaut
    Pour ce qui est de Vector, tu peux oublier dans les cas simples, il vaut mieux utiliser une ArrayList (ArrayList<Integer> ici).

    Pour le max :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    List<Integer> ta_liste = new ArrayList<Integer>();
    ...
    int max = -1;
    for(Integer i:ta_liste) {
       if(i>max) max = i;
    }
    (grillé)

    Au final j'ai trouvé plus simple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Collections.max(ta_liste);

  4. #4
    Membre chevronné Avatar de Rayndell
    Étudiant
    Inscrit en
    Mai 2007
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2007
    Messages : 289
    Par défaut
    Euh... Je ne vois pas en quoi ArrayList est plus simple que Vector. Ces deux classes implémentent toutes deux les mêmes méthodes...

  5. #5
    Membre éprouvé
    Avatar de mavina
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    1 812
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Chine

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2004
    Messages : 1 812
    Par défaut
    Citation Envoyé par Rayndell
    Euh... Je ne vois pas en quoi ArrayList est plus simple que Vector. Ces deux classes implémentent toutes deux les mêmes méthodes...
    Il n'est pas plus simple, il est juste "à préférer" si tu l'utilise dans des applications mono-threadées. Vector est synchronisé, ce qui signifie que la JVM effectuera toutes sortes de tests pour sécuriser ton code exécuté sur le vector en cas d'accès concurent, ce qui n'est pas le cas de ArrayList.

    CF : http://fmora.developpez.com/tutoriel...mediaire/#L5.1

    Fred

  6. #6
    Membre Expert
    Profil pro
    Fabrication GED
    Inscrit en
    Octobre 2005
    Messages
    1 405
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Fabrication GED

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 405
    Par défaut
    De plus Vector est voué à disparaitre...
    Si vraiment tu as besoin d'une collection de type ArrayList synchronisée, tu peux très bien le faire en la créant de cette manière :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    List list = Collections.synchronizedList(new ArrayList(...));

  7. #7
    Membre éprouvé
    Avatar de mavina
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    1 812
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Chine

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2004
    Messages : 1 812
    Par défaut
    Citation Envoyé par iohack
    De plus Vector est voué à disparaitre...
    Ah bon ? Tu as lu ça ou ?

    Fred

Discussions similaires

  1. Réponses: 7
    Dernier message: 23/12/2013, 18h19
  2. Réponses: 3
    Dernier message: 19/05/2011, 14h24
  3. max et min dans une même table
    Par freestyler dans le forum Langage SQL
    Réponses: 2
    Dernier message: 05/05/2008, 17h09
  4. Cocher un items dans une liste de type TCheckListBox
    Par Faith's Fall dans le forum C++Builder
    Réponses: 2
    Dernier message: 02/03/2007, 20h48
  5. Comment Manipuler des objets dans une liste de type TList ?
    Par PadawanDuDelphi dans le forum Delphi
    Réponses: 1
    Dernier message: 02/11/2006, 15h40

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