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 :

ArrayList et constructeur


Sujet :

Collection et Stream Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2013
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2013
    Messages : 11
    Par défaut ArrayList et constructeur
    Premièrement, bonjours à tous ! je suis un nouveau sur ce forum, donc merci d'avance pour votre aide !

    J'en suis à faire mon cours de Prog II et j'ai quelque problème pour un travail.... Voici les fichier :

    - ListeAdt (extends NombreCopies)(interface)
    - NombreCopies (interface)
    - ListeAdtArrayListImpl (implement ListeAdt) (extend NombreCopies)

    Donc mon énoncé est :

    Vous devez implanter tous les services de l’interface ListeAdt dans une classe nommée
    ListeAdtArrayListImpl en utilisant la classe ArrayList. Votre implantation doit être générique et respecter
    intégralement l’interface fournie. Aucun CHANGEMENT ne doit être fait dans l’interface ListeAdt.
    donc pas de problème pour implanter les services, mais mon problème est pour le contructeur ....

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    	ArrayList<T> list;
    		/**
             * Constructeur sans argument permet
             * de créer la nouvelle liste.
             * 
             */
    	public ListeAdtArrayListImpl() {
    		list = new ArrayList<T>();
    	}
    Je pense que je ne comprend juste pas le concept de contructeur... aidez moi !

    merci

  2. #2
    Modérateur
    Avatar de wax78
    Homme Profil pro
    R&D - Palefrenier programmeur
    Inscrit en
    Août 2006
    Messages
    4 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : R&D - Palefrenier programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 096
    Par défaut
    T'aidez à quoi ? C'est quoi la question dans ce cas ci, je cherche mais je ne trouve pas

    En tout cas jusque la rien ne me choque dans ton constructeur... mais a mon avis ca manque un peu de code pour comprendre
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2013
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2013
    Messages : 11
    Par défaut
    Je vais esseyé de mieux m'expliquer.

    voici ce que contient mon interface:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    public interface ListeAdt<T extends NombreCopies> {
     
    public boolean ajouter(T elt);
     
    public void ajouter(ListeAdt<T> liste);
     
    public boolean supprimer(T elt);
     
    public List<T> supprimer(ListeAdt<T> liste);
     
    }
    Et voila ce que contien mon implémentation de cet interface

    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    public class ListeAdtArrayListImpl<T extends NombreCopies> implements ListeAdt<T> {
     
    	ArrayList<T> list;
    	ArrayList<T> NbCopies;
    		/**
             * Constructeur sans argument permet
             * de créer la nouvelle liste.
             * 
             */
    	public ListeAdtArrayListImpl() {
    		list = new ArrayList<T>();
    		NbCopies = new ArrayList<T>();
    	}
    	@Override
    	public boolean ajouter(T elt) {
     
    		if (elt == null){
    			System.out.println("Veuillez entrer un element");
    			return false;
    		}else if(existe(elt)){
    			int position = position(elt);
    			NbCopies.get(position).augmenter(1);
    			return true;
    		}else{
    			list.add(elt);
    			int position = position (elt);
    			NbCopies.add(null);
    			NbCopies.get(position).augmenter(1);
    			return true;
    		}
     
    	}
    	public void ajouter(ArrayList<T> liste) {
    		boolean ajouter = true;
     
    		if (liste == null){
     
    		}else{
    			for(int i=0;i<liste.size();i++){
    				T element = liste.get(i);
    				for(int j=0;i<list.size();j++){
    					if (list.get(j).equals(element)){
    						NbCopies.get(j).augmenter(1);		
    						ajouter = false;
    						break;
    					}
    				}
    					if (ajouter){
    						list.add(element);
    						int position = position (element,list);
    						NbCopies.get(position).augmenter(1);
    					}
    					ajouter = true;
    			}
    		}
     
    	}
    	public boolean supprimer(T elt) {
    		if (existe(elt)){
    			int position = position(elt);
    			list.get(position).diminuer(1);
    			if (list.get(position).obtenirNbCopies()<1){
    				list.remove(position);
    				NbCopies.remove(position);
    			}	
    			return true;
    		}
    		return false;
    	}
    	public List<T> supprimer(ArrayList<T> liste) {
    		for(int i=0; i<liste.size(); i++){
    			if (liste.contains(liste.get(i))){
    				if (NbCopies.get(i).obtenirNbCopies()<2){
    					NbCopies.remove(i);
    					list.remove(i);
    				}else{
    					NbCopies.get(i).diminuer(1);
    				}
    			}
    		}
    			@SuppressWarnings("unchecked")
    			List<T> retour = (List<T>) list.clone(); 
    		return retour;
    	}
    Car maintenant, je suis pas sur de comment m'y prendre pour juste tester tout ca... esce que mes contructeur sont OK Sachant que ListeAdt et ListeAdtArrayListImpl Extend NombreCopie ?

  4. #4
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    442
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 442
    Par défaut
    ListeAdt et ListeAdtArrayListImpl Extend NombreCopie
    Euh... Attends là.

    Déjà, ListAdt et ListeAdtArrayListImpl n'extend pas NombreCopie. C'est leurs paramètres qui doivent l'étendre.

    ensuite, pour tester, tu fais des System.out.println, par exemple, ou si tu utilises un IDE tu peux utiliser la fonction debug avec des watch partout. Mais je pense que ce n'est pas le sens de ta question, donc pourrais-tu préciser ce que tu veux savoir exactement ?

Discussions similaires

  1. problème d'arrayList et constructeur
    Par ryma88 dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 04/07/2009, 00h25
  2. Surcharge constructeur : Arguments variables et ArrayList
    Par vb2013 dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 25/06/2008, 09h39
  3. [VB6]Déclaration d'un Constructeur Spécialisé
    Par TagadaTsoin dans le forum VB 6 et antérieur
    Réponses: 21
    Dernier message: 26/05/2004, 14h09
  4. [ STRUTS ][ JSP ][ ArrayList] un lien pour trier
    Par LoulouFifi dans le forum Servlets/JSP
    Réponses: 7
    Dernier message: 03/02/2004, 17h24
  5. pb constructeurs classes dérivant classe abstraite
    Par Cornell dans le forum Langage
    Réponses: 2
    Dernier message: 10/02/2003, 19h02

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