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 :

recherche d'un objet de type tableau dans un 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 recherche d'un objet de type tableau dans un vector
    Bonjour,

    j'ai une liste de type vector "liste"qui contient des des objets de type type tabeau à 2 dimensions "int [] tab = new int [2]" ,
    exemple :liste= [[1,2] , [3,5], [2,5],[100,13]];
    comment parcourir cette liste pour prouver par exemple que le tableau [2,5] se trouve dans la liste?

    merci.

  2. #2
    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
    Un truc codé à l'arrache mais qui marche :
    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
     
    public class Test {
        public static void main(String args[]) {
            ArrayList<Integer[]> list = new ArrayList<Integer[]>();
            list.add(new Integer[]{1,2,3});
            Integer[] tab = new  Integer[]{1,2,3};
            System.out.println(contains(list,tab));
        }
     
        private static boolean contains(ArrayList<Integer[]> list,Integer[] tab) {
            for(Integer[] tmp:list) {
                if(Arrays.equals(tmp,tab)) return true;
            }
            return false;
        }
    }
    La classe Vector est une vieille classe qui ne devrait plus être utilisée à l'heure actuelle.

  3. #3
    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
    La méthode contains(obj) de Vector renvoie true si obj est dans le vecteur... C'est tout. Pas besoin de se faire chier avec un code bourrin.

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juin 2007
    Messages : 13
    Par défaut
    Rayndell, pas tout à fait d'accord avec toi.

    La méthode contains de Vector renvoie true si un des objets est égal à celui qu'on cherche. Egal veut dire que si on fait objet1.equals(objet2), ça renvoie true.

    Mais dans le cas des tableaux, si tu fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    int[] tab1 = {2,5};
    int[] tab2 = {2,5};
     
    System.out.println(tab1.equals(tab2));
    Ca t'écrit false, parce que ce n'est pas le même objet : tab1 et tab2 ne sont pas stockés au même endroit dans la mémoire, ils sont distincts.

  5. #5
    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
    Désolé. Je me demande comment j'ai pu écrire une connerie pareille.

Discussions similaires

  1. Réponses: 5
    Dernier message: 28/12/2012, 23h21
  2. Réponses: 10
    Dernier message: 20/10/2008, 17h25
  3. Réponses: 7
    Dernier message: 17/07/2008, 11h10
  4. Changer la couleur de "font" dans un objet de type "ImageFont" dans PIL
    Par KINENVEU dans le forum Calcul scientifique
    Réponses: 2
    Dernier message: 07/06/2007, 03h29
  5. Réponses: 3
    Dernier message: 16/10/2006, 11h06

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