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

avec Java Discussion :

Récupérer dernier élément d'une List


Sujet :

avec Java

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Récupérer dernier élément d'une List
    Bonsoir,
    Je suis débutant en Java.
    J'ai une classe Drawing.java ayant comme methode :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    public List<Shape> getShape() {
            return this.myShapes;
        }
    J'ai ensuite une interface qui permet de dessiner des cercles et des lignes. Je souhaite creer un bouton qui permet de supprimer le dernier element créé (shape) le soucis est que je ne sais pas comment récuperer le dernier element d'une liste

    j'ai fait ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    public void keyPressed(KeyEvent e) {
     
    		int i;
                     i=myDrawing.myShapes.size()-1;
                    mySelectedShape = myDrawing.myShapes.getShape(i);
    		myDrawing.deleteShape(mySelectedShape);*/
    				myPanel.repaint();
    	}

    merci d'avance

  2. #2
    Modérateur

    Avatar de Robin56
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juin 2009
    Messages
    5 297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juin 2009
    Messages : 5 297
    Points : 13 670
    Points
    13 670
    Par défaut
    Citation Envoyé par loupdu45 Voir le message
    J'ai ensuite une interface qui permet de dessiner des cercles et des lignes. Je souhaite creer un bouton qui permet de supprimer le dernier element créé (shape) le soucis est que je ne sais pas comment récuperer le dernier element d'une liste
    Je viens de parcourir la Javadoc et je n'ai pas trouvé plus propre que ce que tu as fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Object lastElement = monArrayList.get(monArrayList.size() - 1);
    Mais parcontre n'utilise pas de notation pointé aussi longue. Le jour où une variable est null dans la liste, c'est plus difficile à débuguer. Et pense à l'utilisation de getter à la place de l'accès à une variable directement comme "myDrawing.myShapes".
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d'un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Architecte Solution
    LinkedIn : https://www.linkedin.com/in/nicolascaudard/

  3. #3
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Citation Envoyé par Robin56 Voir le message
    Je viens de parcourir la Javadoc et je n'ai pas trouvé plus propre que ce que tu as fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Object lastElement = monArrayList.get(monArrayList.size() - 1);
    Utiliser une Deque au lieu d'une List. Par exemple une LinkedList ou une ArrayDeque
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Modérateur

    Avatar de Robin56
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juin 2009
    Messages
    5 297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juin 2009
    Messages : 5 297
    Points : 13 670
    Points
    13 670
    Par défaut
    Citation Envoyé par thelvin Voir le message
    Utiliser une Deque au lieu d'une List. Par exemple une LinkedList ou une ArrayDeque
    Ah oui en effet, je n'y avais pas pensé pour la LinkedList. Et je ne connaissais pas l'interface Deque. Je te préconise les conseils de thelvin.
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d'un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Architecte Solution
    LinkedIn : https://www.linkedin.com/in/nicolascaudard/

  5. #5
    Membre du Club
    Inscrit en
    Octobre 2008
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 71
    Points : 63
    Points
    63
    Par défaut
    tu peux ajouter le code du parcour dans le constructeur . ton get()
    exemple :
    taList.size() va retourner la taille de ta list .
    tu peux trouver le dernier élément il est a l'indice taille -1

    // désolé je viens de lire la réponse du modérateur .

Discussions similaires

  1. Itérateur sur l'avant-dernier élément d'une liste
    Par DJM400 dans le forum SL & STL
    Réponses: 8
    Dernier message: 15/12/2009, 18h33
  2. Réponses: 3
    Dernier message: 02/08/2009, 15h23
  3. Dernier élément d'une liste
    Par nabil148911 dans le forum SQL
    Réponses: 1
    Dernier message: 03/08/2007, 12h26
  4. Réponses: 1
    Dernier message: 21/04/2007, 16h36
  5. Réponses: 3
    Dernier message: 25/10/2006, 19h08

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