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 :

lecture d'une valeur dans un tableau


Sujet :

Collection et Stream Java

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    426
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 426
    Par défaut lecture d'une valeur dans un tableau
    Bonjour,

    j'ai un tableau défini comme ceci : Vector tab = new Vector();

    et j'aimerai chercher la dernière valeur qui a été écrite dans le tableau.
    (je suppose qu'il faut utiliser length?)

    Pourriez-vous me donner la ligne de code svp?

    Merci à tous
    bonne soirée
    Aud-

  2. #2
    Membre éclairé Avatar de Chatbour
    Profil pro
    Étudiant
    Inscrit en
    Septembre 2006
    Messages
    431
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2006
    Messages : 431
    Par défaut
    Salut,

    L'indice de la dernière case est size()-1..

    Cordialement..

  3. #3
    Membre expérimenté Avatar de Amine_sas
    Profil pro
    Étudiant
    Inscrit en
    Juin 2005
    Messages
    245
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2005
    Messages : 245
    Par défaut
    Salut,
    Vector n'est pas un tableau ordinaire (array[]), c'est plutôt un tableau dynamique.
    pour récupérer le nombre d'éléments insérés:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    int s = myVector.size(); //une methode pas un champ length 
    Object last = myVector.size(s - 1);
    Conseils:
    - utilises ArrayList à au lieu de Vector.
    - et visites cette page pour te faciliter la vie.

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    426
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 426
    Par défaut size
    alors pas de problème pour la ligne :
    int s = tab.size();

    Mais pour la deuxième ligne :
    Object last = tab.size(s - 1);

    eclipse me dit "la methode size() dans le type Vector n'est pas applicable à l'argument (int) "

    je précise que je ne peux pas utiliser un autre type de tableau... il va falloir que je fasse avec!

    donc que faire pour palier à ce problème svp?

    merci a tous
    bonne soirée
    Aud-

  5. #5
    Membre expérimenté Avatar de Amine_sas
    Profil pro
    Étudiant
    Inscrit en
    Juin 2005
    Messages
    245
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2005
    Messages : 245
    Par défaut
    Citation Envoyé par canary Voir le message
    alors pas de problème pour la ligne :
    int s = tab.size();

    Mais pour la deuxième ligne :
    Object last = tab.size(s - 1);

    eclipse me dit "la methode size() dans le type Vector n'est pas applicable à l'argument (int) "
    Pardon!
    Je voulais dire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Object last = tab.get(s - 1);

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    426
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 426
    Par défaut ça marche!
    c'est super! merci beaucoup!!

    bon aprem
    aud-

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    426
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 426
    Par défaut oups!
    olé! j'ai parlé un peu trop vite désolé!

    en effet cette methode marche "toute seule" mais mon but c'était de comparer ce qu'il y a dans le tableau avec une valeur entrée par l'utilisateur dans une chaine de caractere...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if ((tab.get(s - 2))==getNbre(StringToNb_left(s1)))
    le problème c'est qu'en faisant ça, eclipse me dit : operande incompatible entre les types Object et int

    que puis-je faire?

    PS: je précise que getNbre est une méthode qui va chercher le nombre (ici de gauche) contenu dans la chaine s1

    Merci pour votre aide!
    Bon aprem
    Aud-

  8. #8
    Membre actif
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 62
    Par défaut
    La méthode contains reponds peut-être à ton besoin

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if (tab.contains(new Integer(s1)))
    {
      // contenu
    }
    , sinon tu peux typé ta liste


  9. #9
    Membre Expert Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 698
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 698
    Par défaut
    Ou en effet un les collection par défaut contiennent des objets il te retourne don un objet que tu ne peux comparret avec un int soit :

  10. #10
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    426
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 426
    Par défaut ok cool!
    merci ça marche super maintenant!!

    bon aprem!
    aud-

  11. #11
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    426
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 426
    Par défaut une autre question
    J'ai une autre question toujours en rapport avec mon tableau :

    J'aimerai faire une conditionnelle qui cherche si le nombre tappé par l'utilisateur est déja compri dans le tableau. j'ai essayé ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if ((getNbre(StringToNb_right(s1)))==tab[i]){}
    Mais bien evidement ça ne marche pas car tab[i] c'est pour un tableau int mais moi c'est un tableau comme ceci : Vector tab = new Vector();
    (je re précise pour ceux qui arrivent que getNbre est une méthode qui va chercher le nombre, ici de droite, dans la chaine s1)

    Que faire pour réaliser cette conditionelle svp?

    Merci à tous!
    Bonne soirée!
    Aud-

  12. #12
    Membre expérimenté Avatar de Amine_sas
    Profil pro
    Étudiant
    Inscrit en
    Juin 2005
    Messages
    245
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2005
    Messages : 245
    Par défaut
    Salut,
    Déclares ton vector comme étant une collection d'objets Integer (donc tous les éléments que tu insères doivent être de type Integer) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Vector<Integer> tab = new Vector<Integer>();
    Pour vérifier l'existence d'un élément:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     if (tab.contains(new Integer(getNbre(StringToNb_right(s1)))))
    {
       ....
    }

  13. #13
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    426
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 426
    Par défaut ça marche
    meme sans changer la declaration de mon tableau la méthode contains() marche bien.

    merci beaucoup pour cette aide précieuse!!

    il est bien dommage que le smiley bisous n'existe pas car tu le mérites!

    just for fun

    bonne soirée!
    Aud-

  14. #14
    Membre expérimenté Avatar de Amine_sas
    Profil pro
    Étudiant
    Inscrit en
    Juin 2005
    Messages
    245
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2005
    Messages : 245
    Par défaut
    Citation Envoyé par canary Voir le message
    meme sans changer la declaration de mon tableau la méthode contains() marche bien.
    Oui ça marche, mais en utilisant la généricité le code devient plus robuste (oublies ça pour le moment )

  15. #15
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    426
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 426
    Par défaut
    lol

Discussions similaires

  1. Réponses: 9
    Dernier message: 05/01/2007, 20h04
  2. Réponses: 4
    Dernier message: 27/11/2006, 23h20
  3. Chercher une valeur dans un tableau
    Par christel1982 dans le forum ASP
    Réponses: 5
    Dernier message: 14/09/2006, 09h01
  4. Rechercher une valeur dans un tableau
    Par pafi76 dans le forum Access
    Réponses: 2
    Dernier message: 29/06/2006, 14h23
  5. Réponses: 21
    Dernier message: 28/02/2006, 15h23

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