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 :

[Tableau][Base]Création d'une classe de gestion de tableau


Sujet :

Collection et Stream Java

  1. #1
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 127
    Points : 46
    Points
    46
    Par défaut [Tableau][Base]Création d'une classe de gestion de tableau
    Bonjour,
    je suis très nouveau en Java, et j'ai epuissé toutes les aides que j'ai pu, je dois faire l'exercice suivant mais je suis bloqué. si quelqu'un peut m'aider ce serait super, toute la documentation que je trouve est trop avancée pour mes connaissances, j'ai ici quelque chose de très basique.

    l'exercice est le suivant:
    Ecrivez le code d'une classe Tableau qui contient

    1. un (ou deux) champ qui permet de représenter un tableau d'entiers

    2. deux constructeurs (voir détails plus bas)

    3. trois méthodes (une qui affiche le contenu du tableau, une qui inverse le contenu du tableau et une qui trie le tableau dans l'ordre croissant).


    Ces deux dernières méthodes modifient la valeur du tableau et n'affichent rien !

    Le premier constructeur est sans argument. II commence par demander à l'utilisateur la taille du tableau a créer et ensuite demande la valeur de chacune des cases.

    Le deuxième constructeur a un argument de type entier qui représente la taille du tableau que l'on veut créer. Ce constructeur demande également les valeurs des cases à l'utilisateur.



    Ecrivez le code d'une application Java qui utilise votre classe Tableau. Cette application crée une première instance de la classe Tableau qui contient 5 entiers. Cette instance est ensuite triée dans l'ordre croissant et affichée a l'écran. L'application crée ensuite une seconde instance de la classe Tableau en utilisant I’ autre constructeur. Cette instance est inversée et ensuite affichée à l'écran
    voilà le code que j'ai pu faire mais je ne sais pas comment faire apres:
    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
     
    class table{
       int [] tableauDEntiers;
       int [] tableauDEntiers2;
       Table(){
     
       }
       Table(int n){
     
       }
       void afftab(){
     
       }
       void inversetab(){
     
       }
       void trietab(){
     
       }
    }
    public class Tableau{
       public static void main(String args[]){
       }
    }
    merci d'avance.

  2. #2
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Points : 6 498
    Points
    6 498
    Par défaut
    pourquoi mets-tu deux tableaux d'entiers dans ta classe ?
    Il serait peut-être plus judicieux d'utiliser le deuxième champ pour mémoriser la taille du tableau, non ?
    Connais-tu les algos de base de parcours d'un tableau ?
    Sais-tu trier un tableau d'entiers ?
    Es-tu capable d'écrire ces algos en pseudo-code ?
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  3. #3
    Membre actif Avatar de vincent63
    Inscrit en
    Octobre 2005
    Messages
    198
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 198
    Points : 205
    Points
    205
    Par défaut
    Le premier constructeur est sans argument. II commence par demander à l'utilisateur la taille du tableau à créer et ensuite demande la valeur de chacune des cases.
    Un constructeur qui DEMANDE A L'UTILISATEUR la taille d'un tableau?!?
    Si tu veux marquer des points avec ton prof ... NE FAIT PAS CE CONSTRUCTEUR!!!! Enfin quand je dis marquer des points... euh, j'veux dire que tu vas seulement monter dans son estime... mais peut-être pas dans la moyenne.

    Bon, voilà un bout de code fait à l'arrache, à priori, il n'y a pas de bugg... Tu peux peut-être t'en inspirer (j'ai dit inspirer pas recopier )

    Pour les tris je te laisse faire. En ce qui concerne le premier constructeur, je laisserai tomber à ta place parce que c'est vraiment pas un truc à faire. Trouve une parade.

    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
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
     
    public class Tableau {
     
    	private final int [] tableau;
    	private final int taille;
     
     
    	/**
             * Default constructor
             * @param int taille size of tableau
             */
    	public Tableau(int _taille){
    		tableau = new int[_taille];
    		taille = _taille;
    		initTableau();
    	}
     
    	/**
             * Init all values of the tableau to 0
             */
    	private void initTableau(){
    		for (int i=0; i<taille; i++){
    			tableau[i] = 0;
    		}
    	}
     
    	/**
             * Returns a string who represents all values
             * of the tableau
             * @return String
             */
    	public String toString() {
    		StringBuffer stringBuffer = new StringBuffer();
    		stringBuffer.append("[");
    		for (int i = 0; i< taille-1; i++){
    			stringBuffer.append(tableau[i]);
    			stringBuffer.append(", ");
    		}
    		stringBuffer.append(tableau[taille-1]);
    		stringBuffer.append("]");
    		return stringBuffer.toString();
    	}
     
    	/**
             * Returns the element from tableau at value passed 
             * in argument
             * @param i int
             * @return int value from tableau
             * @exception IndexOutOfBoundsException
             */
    	public int getValueFrom(int i){
    		if (i<0 || i>=taille)
    			throw new IndexOutOfBoundsException();
    		return tableau[i];
    	}
     
    	/**
             * Returns the size of the tableau
             * @return int size of tableau
             */
    	public int sizeOf(){
    		return taille;
    	}
     
     
    	/**
             * Sets the value passed in argument in tableau at index value
             * @param index int
             * @param value int
             * @exception IndexOutOfBoundsException
             */
    	public void addValue(int index, int value){
    		if (index<0 || index>=taille)
    			throw new IndexOutOfBoundsException();
    		tableau[index] = value;
    	}
     
    	/**
             * A FAIRE
             *
             */
    	public void sort(){
     
    	}
     
    	/**
             * ENCORE A FAIRE
             *
             */
    	public void reverse(){
     
    	}
     
    }
    Bon courage.
    "Ils ne savaient pas que c'était impossible... alors ils l'ont fait." Mark Twain

  4. #4
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 127
    Points : 46
    Points
    46
    Par défaut
    champ = attributs? maintenant que tu le dis je comprends que ce n'est pas deux tableaux dans l'énonce comme j'avais compris au début.
    le deuxieme champ ce serait un int ou sera la taille du tableau?
    en général je parcours un tableau avec une boucle pour..
    je ne sais pas s'il y a des autres methodes plus optimisées.
    pour le tri aussi j'utilise normalement une boucle pour pour savoir quel est le plus petit et puis je fait un echange
    j'ai un peu modifie le code en conséquence:

    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
     
    class Table{
       private int contenu[];
       private int taille;
     
     /* Table(){
          System.out.println("quelle est la taille du tableau à créer");
          taille = Clavier.lireInt();
          System.out.println("le contenu du tableau");
          contenu = new int[taille];
          for(int i=0;i<taille;i++){
            contenu[i]=Clavier.lireInt();
          }*/
     
       }
       Table(int n){
         System.out.println("Entrez la taille du tableau");
         n = Clavier.lireInt();
         taille = n;
         System.out.println("valeur de chacune des cases");
         contenu = new int[taille];
         for(int i=0;i<taille;i++){
           contenu[i]= Clavier.lireInt();
         }
       }
       void afftab(){
     
       }
       void inversetab(){
     
       }
       void trietab(){
     
       }
    }
    public class Tableau{
       public static void main(String args[]){
       }
    }
    }
    n
    est ce que ce code a du sens.
    pour le pseudocode j'ai déjà fait dans ma vie.. mais je dois retrouver mes notes.
    clavier est une classe qui m'a été fournie.

  5. #5
    Membre éprouvé

    Profil pro
    Inscrit en
    Août 2003
    Messages
    878
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2003
    Messages : 878
    Points : 1 067
    Points
    1 067
    Par défaut
    Citation Envoyé par vincent63
    Un constructeur qui DEMANDE A L'UTILISATEUR la taille d'un tableau?!?
    Si tu veux marquer des points avec ton prof ... NE FAIT PAS CE CONSTRUCTEUR!!!!
    Qui a "raison" en général ? Le prof' ou l'élève ? Si le prof' demande un truc, il vaut mieux lui donner (ce qui n'empêche pas de lui expliquer que "normalement ça se fait pas blabla"... Mais il faut aussi penser au but pédagogique de la chose. Si ça aide à comprendre qu'une classe possède ses propres méthodes qui agissent sur elle...enfin, tu vois...
    Citation Envoyé par vincent63
    Enfin quand je dis marquer des points... euh, j'veux dire que tu vas seulement monter dans son estime... mais peut-être pas dans la moyenne.
    Tu fais bien de le dire.
    Un problème bien exposé
    est, pour moitié, solutionné. / La connaissance s'accroît quand on la partage, pas quand on l'impose. / La violence est le langage des faibles.

  6. #6
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 127
    Points : 46
    Points
    46
    Par défaut
    on s'en fous de points
    il y a des trucs pour avoir des points

    c'est apprendre qui m'interesse souvent j'apprends sans avoir de points

  7. #7
    Membre expérimenté
    Avatar de viena
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    1 071
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Juillet 2002
    Messages : 1 071
    Points : 1 512
    Points
    1 512
    Par défaut
    Je pense que s'il te demande deux constructeur, c'est pour que tu penses à appeler le second dans le premier...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
       Table(){
          System.out.println("quelle est la taille du tableau à créer");
          taille = Clavier.lireInt();
          this=new Table(taille);
       }
       Table(int n){
         System.out.println("valeur de chacune des cases");
         contenu = new int[taille];
         for(int i=0;i<taille;i++){
           contenu[i]= Clavier.lireInt();
         }
       }
    Tu pourrrais presque mettre ce constructeur en private du coup.
    Enfin bon, peut être que je me trompe, mais je ne vois a priori pas d'autre raison de faire ces deux constructeurs.
    Cours et tutoriels pour apprendre Java , FAQ Java, et Forum Java
    "La liberté de tout être s'arréte là où commence celle de l'autre... Respecter l'autre, c'est préserver sa liberté d'être, de penser et de vivre"

  8. #8
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Points : 6 498
    Points
    6 498
    Par défaut
    Citation Envoyé par viena
    Je pense que s'il te demande deux constructeur, c'est pour que tu penses à appeler le second dans le premier...
    Je pense effectivement que c'est dans un but purement pédagogique.
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  9. #9
    Membre actif Avatar de vincent63
    Inscrit en
    Octobre 2005
    Messages
    198
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 198
    Points : 205
    Points
    205
    Par défaut
    'jour tout le monde,
    Je ne suis pas sûr que cela soit très pédagogique de donner un TP visant à enseigner la POO avec des indications qui vont à l'encontre même de la programmation object.

    Un object tableau NE DOIT PAS avoir la responsabilité de demander à un utilisateur, un fichier ou autre les données qu'il va contenir, et encore moins dans son contructeur. Cela fait parti de la responsabilité d'un autre object, ici pour faire simple : la méthode main.

    De la même façon, le tableau NE DOIT PAS avoir à afficher les valeurs qu'il contient mais a la RESPONSABILITE de fournir une représentation exploitable pour cela (ie. la méthode toString dans le code).

    Maintenant, pour l'appel d'un constructeur par un autre, il y avait plus simple :
    1. un constructeur avec en paramètre une taille,
    2. un constructeur avec en paramètre un tableau.

    Le second aurait appelé le premier et hop, le coté pédagogique était présent tout en concervant une bonne programmation object.

    Je suis surpris de voir que cela ne choque pas plus de gens que l'on affecte à un constructeur la charge de demander à l'utilisateur les valeurs avec lesquelles il doit s'initialiser. Cela ressemble plus à de la programmation procédurale.

    Quoi qu'il en soit, ton prof te demande quelque chose de précis. Tu as le choix, soit lui rendre, soit te démarquer et montrer (de façon diplômatique) que tu as fait des recherches et que tu n'es pas (si c'est le cas) d'accord avec sa façon de voir. Si tu amènes correctement ta solution avec force d'explication cela ne peut que passer.

    En tout cas, tient nous au courant...
    "Ils ne savaient pas que c'était impossible... alors ils l'ont fait." Mark Twain

  10. #10
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 127
    Points : 46
    Points
    46
    Par défaut
    salut, à mon avis, c'est dans l'application java qui il faut utiliser les deux constructeurs de facon différente, mais je ne vois pas comment

    apres avoir écrit une class tableau je dois normalment créer une méthode main
    selon l'énonce je dois faire le suivant:
    Ecrivez le code d'une application Java qui utilise votre classe Tableau. Cette application crée une première instance de la classe Tableau qui contient 5 entiers. Cette instance est ensuite triée dans l'ordre croissant et affichée a l'écran. L'application crée ensuite une seconde instance de la classe Tableau en utilisant I’ autre constructeur. Cette instance est inversée et ensuite affichée à l'écran
    ma question est comment utilise-t-on un constructeur dans une methode main?
    quel est en fait le role d'un constructeur?

  11. #11
    Membre actif Avatar de vincent63
    Inscrit en
    Octobre 2005
    Messages
    198
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 198
    Points : 205
    Points
    205
    Par défaut
    Le rôle d'un constructeur est d'initialiser l'object et entre autres ses attributs.

    Dans le programme principal (Main), tu dois mettre un truc du genre de :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MonObject monObject = new MonObject(param1, param2, etc...);
    La méthode après le new correspond à ton constructeur.
    "Ils ne savaient pas que c'était impossible... alors ils l'ont fait." Mark Twain

  12. #12
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    509
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 509
    Points : 568
    Points
    568
    Par défaut
    Le role d'un contructeur est de construire un objet !!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Tableau tableau = new Tableau();
    Voila comment s'utilise un contructeur ici il s'agit d'un constructeur sans parametre, le new permet d'allouer lespace memoire suffisant pour un objets de type Tableau et le constructeur Tableau() est la "methode" (s'en est pas vraiment une mais bon ) qui est apelé lors de la construction du coup tu peux(dois) initialiser tout ce qui concerne l'instance dans le constructeur et donc eventuellement créer d'autres objets en utilisant d'autres constructeurs!!
    UML avec VIOLET

  13. #13
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 127
    Points : 46
    Points
    46
    Par défaut
    maintenant je commence a comprendre que ces constructeur n'ont pas de sens pour moi.
    j'instancie le tableau de la facon suivante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public class Tableau{
       public static void main(String args[]){
          Table tab = new Table(5);
          tab.afftab();
    car il m'est demande de creer une premiere intance de la classe tableau qui contient 5 entiers mais quand j'execute il me demande a nouveau la taille ... car je fais cela dans le constructeur. donc je peux mettre autre chose que 5 !

    je vois pas l'utilité franchement.. je suis tente pour laisser tomber le constructeur qui n'as pas d'argument mais dans l'application je dois créer deux instances de tableaux qui viennent de constructeur différents.. en fin je continue a essayer.

  14. #14
    Membre actif Avatar de vincent63
    Inscrit en
    Octobre 2005
    Messages
    198
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 198
    Points : 205
    Points
    205
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Table(int n){
         System.out.println("Entrez la taille du tableau");
         n = Clavier.lireInt();
         taille = n;
         System.out.println("valeur de chacune des cases");
         contenu = new int[taille];
         for(int i=0;i<taille;i++){
           contenu[i]= Clavier.lireInt();
         }
       }
    En fait, le problème vient du fait que tu passes une taille en argument et qu'ensuite, tu redemandes la taille avec la commande

    Il te suffit de supprimer cette ligne
    "Ils ne savaient pas que c'était impossible... alors ils l'ont fait." Mark Twain

  15. #15
    Membre expérimenté
    Avatar de viena
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    1 071
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Juillet 2002
    Messages : 1 071
    Points : 1 512
    Points
    1 512
    Par défaut
    vincent +1.
    Je te redonne le code qu'à mon avis ton prof voudrait avoir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
       Table(){
          System.out.println("quelle est la taille du tableau à créer");
          taille = Clavier.lireInt();
          this=new Table(taille);
       }
       Table(int n){
         System.out.println("valeur de chacune des cases");
         contenu = new int[taille];
         for(int i=0;i<taille;i++){
           contenu[i]= Clavier.lireInt();
         }
       }
    Il est fréquent d'avoir deux constructeurs dans une classe. Meme si c'est effectivement bizarre de demander la taille dans le constructeur, c'est un exercice, il ne faut donc pas chercher plus loin

    Je pense que ce que ton prof veut démontrer ici, c'est qu'il est possible de surcharger les constructeurs.
    Cours et tutoriels pour apprendre Java , FAQ Java, et Forum Java
    "La liberté de tout être s'arréte là où commence celle de l'autre... Respecter l'autre, c'est préserver sa liberté d'être, de penser et de vivre"

  16. #16
    Membre actif Avatar de vincent63
    Inscrit en
    Octobre 2005
    Messages
    198
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 198
    Points : 205
    Points
    205
    Par défaut
    Il est fréquent d'avoir deux constructeurs dans une classe. Meme si c'est effectivement bizarre de demander la taille dans le constructeur, c'est un exercice, il ne faut donc pas chercher plus loin
    Tu dois avoir raison .
    Le nombre de constructeur ne me choque pas, je voulais juste souligner le fait que cela sonne faux conceptuellement...
    Mais bon, c'est qu'un TP... Je m'incline...
    (Mais je peux garder le +1 ??? )
    "Ils ne savaient pas que c'était impossible... alors ils l'ont fait." Mark Twain

  17. #17
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Points : 6 498
    Points
    6 498
    Par défaut
    N'étant pas spécialiste de Java, il y a quelque chose qui me paraît bizarre :
    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
       Table(){
          System.out.println("quelle est la taille du tableau à créer");
          taille = Clavier.lireInt();
          this=new Table(taille);
       }
     
       Table(int n){
         System.out.println("valeur de chacune des cases");
         // ne devrait-on pas avoir ici
         taille = n;
         // car celui qui appelle directement tab = new Tableau (20) ;
         // doit avoir un problème non ?
         contenu = new int[taille];
         for(int i=0;i<taille;i++){
           contenu[i]= Clavier.lireInt();
         }
       }
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  18. #18
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 127
    Points : 46
    Points
    46
    Par défaut
    il y a un probleme a l'execution avec la ligne
    [/code]this= new Table (taille);

    le compilateur me dit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    cannot assign a value to final variable this
    d'autre part j'ai essaye en enlevant les lignes et c'est bon je continue il ne me demande plus la taille du tableau et prends la taille que je passe en parametre.

    le code suivant comment il est implemente? c'est le code que j'utilise pour afficher le resultats de mon tableau trie et non trie



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    public String toString(){
            String s="[";
            for(int i=0;i<taille-1;i++)
    	s=s+contenu[i]+",";
            s=s+contenu[taille-1]+"]";
            return(s);
        }
    merci beaucoup

  19. #19
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Points : 6 498
    Points
    6 498
    Par défaut
    pourquoi ne fais-tu pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    public String toString(){
            String s="[";
            for(int i=0;i<taille;i++)
                s+=contenu[i]+",";
            s+="]";
            return(s);
        }
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  20. #20
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 127
    Points : 46
    Points
    46
    Par défaut
    Citation Envoyé par Trap D
    pourquoi ne fais-tu pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    public String toString(){
            String s="[";
            for(int i=0;i<taille;i++)
                s+=contenu[i]+",";
            s+="]";
            return(s);
        }
    oui mais que fait ce code, comment cela marche? il fonctionne tres bien mais j'aimerai comprendre l'essence.
    merci

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 3 123 DernièreDernière

Discussions similaires

  1. definir une classe et initialiser un tableau
    Par rorette68 dans le forum ASP
    Réponses: 3
    Dernier message: 02/03/2010, 15h09
  2. tableau de combobox et textbox dans une classe
    Par hamedi1 dans le forum C#
    Réponses: 1
    Dernier message: 08/02/2010, 17h22
  3. Tableau de structure en C et une classe en C#
    Par Mouti dans le forum C++/CLI
    Réponses: 6
    Dernier message: 10/07/2007, 07h55
  4. Réponses: 2
    Dernier message: 05/08/2006, 13h29
  5. []Abstraction base de donnee grace a une classe
    Par tfh dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 16/11/2005, 12h04

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