Question sur les tableaux

Question sur les tableaux - Java - Programmation

Marsh Posté le 18-06-2003 à 17:11:03    

Bonjour,
 
Au cours d'info (java), on nous apprend comment sont implémentées différentes structures de données ( pille, liste, vecteur, arbre, ...) mais moi j'aurais voulu savoir comment est implémenté un bête tableau.  Ca me parrait pourtant la base de tout mais on en parle nulle part ...
 

Reply

Marsh Posté le 18-06-2003 à 17:11:03   

Reply

Marsh Posté le 18-06-2003 à 18:12:27    

implementé?
si tu entends par la remplir une case de ton bete tableau...
-> beteTablo[ligne][colone] = value;
 
sinon defini implémenté

Reply

Marsh Posté le 18-06-2003 à 18:36:11    

En fait je veux savoir ce qui se cache derrière un tableau.
 
Par exemple une implémentation possible pour une pille, est une suite de noeuds qui se référencient les uns les autres.
 
A première vue pour un tableau j'aurais dis que c'est un ensemble de variables ... mais je vois pas bien comment ca fonctionnne.


Message édité par spiritous le 18-06-2003 à 18:42:35
Reply

Marsh Posté le 18-06-2003 à 19:12:43    

Le tableau c'est un type natif au langage. Y a pas de classe tableau.  
 
en java, c'est un espace mémoire de L fois la taille d'un pointeur (L étant la longueur du tableau). Chaque case du tableau contient une référence vers l'objet se trouvant dans la case ou null.
 
c'est pareil dans les autres langage sauf que c'est pas la taille d'un pointeur mais la taille du type que tu mets dedans.
 
Quand on a fait du C avant, on se pose pas ce genre de questions :)


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 18-06-2003 à 19:31:24    

benou a écrit :

Le tableau c'est un type natif au langage. Y a pas de classe tableau.  
 
en java, c'est un espace mémoire de L fois la taille d'un pointeur (L étant la longueur du tableau). Chaque case du tableau contient une référence vers l'objet se trouvant dans la case ou null.
 
c'est pareil dans les autres langage sauf que c'est pas la taille d'un pointeur mais la taille du type que tu mets dedans.
 
Quand on a fait du C avant, on se pose pas ce genre de questions :)


ben quand tu fais un tableau avec des types primitifs, il met pas directement les types dedant ?? Pourquoi ils utiliseraient des pointeurs ??

Reply

Marsh Posté le 18-06-2003 à 19:46:31    

Mmm Ok, j'y vois déjà plus clair :)
mais je comprends plus quelque chose : comment ce fait il alors que les tableaux sont des objets ?  

Reply

Marsh Posté le 18-06-2003 à 21:15:19    

benou a écrit :

Quand on a fait du C avant, on se pose pas ce genre de questions :)

j'ai jamais fait de C et je me pose pas non plus ce genre de questions [:ddr555]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 18-06-2003 à 22:58:15    

deltaden a écrit :


ben quand tu fais un tableau avec des types primitifs, il met pas directement les types dedant ?? Pourquoi ils utiliseraient des pointeurs ??


ouais ok, j'ai fait un petit raccourcit. Je parlais des tableaux d'objets ...  pour les types primtif c'est L * la taille du type (comme en C)


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 18-06-2003 à 23:00:13    

the real moins moins a écrit :

j'ai jamais fait de C


[:serial coder]
 
comment tu peux autant aprécier le java si t'as jamais fait de C ??? [:ddr555]


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 18-06-2003 à 23:08:27    

benou a écrit :


[:serial coder]
 
comment tu peux autant aprécier le java si t'as jamais fait de C ??? [:ddr555]

j'ai tenté de lire le ritchie et karnighan, ça m'a suffit [:ddr555]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 18-06-2003 à 23:08:27   

Reply

Marsh Posté le 18-06-2003 à 23:35:10    

benou a écrit :


[:serial coder]
 
comment tu peux autant aprécier le java si t'as jamais fait de C ??? [:ddr555]


 
parce que le java c'est comme de la poësie  :love:
 
edit; je dirai même plus http://ivan.la-offteam.com/benou/benou_love.gif


Message édité par uriel le 18-06-2003 à 23:35:55

---------------
IVG en france
Reply

Marsh Posté le 18-06-2003 à 23:45:59    

benou a écrit :

ouais ok, j'ai fait un petit raccourcit. Je parlais des tableaux d'objets ...  pour les types primtif c'est L * la taille du type (comme en C)


ouf, j'ai eu peur un moment :)

Reply

Marsh Posté le 19-06-2003 à 00:17:34    

uriel a écrit :


parce que le java c'est comme de la poësie  :love:


j'imagine la gueule d'un code en alexendrins ! [:ddr555]


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 19-06-2003 à 09:17:05    

spiritous a écrit :

Mmm Ok, j'y vois déjà plus clair :)
mais je comprends plus quelque chose : comment ce fait il alors que les tableaux sont des objets ?    


 
ben c'est pas des objets, justement!!!

Reply

Marsh Posté le 19-06-2003 à 09:56:58    

gfive a écrit :


 
ben c'est pas des objets, justement!!!
 


 
Ben, en Java, un petit peu quand même, vu qu'un tableau dispose d'un attribut (length). non ?

Reply

Marsh Posté le 19-06-2003 à 10:49:48    

gfive a écrit :


ben c'est pas des objets, justement!!!


Si si un tableau est un objet ... un peu spécial mais c'est un object quand même ...


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 19-06-2003 à 10:52:31    

spiritous a écrit :


comment ce fait il alors que les tableaux sont des objets ?    


je vois pas le problème que ca te pose  :??:  
 
pkoi ca en serait pas hein ?


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 19-06-2003 à 12:46:23    

benou a écrit :


je vois pas le problème que ca te pose  :??:  
 
pkoi ca en serait pas hein ?

c'est pas un pb, a la base il voulait juste savoir comment c'est implementé ;)


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 19-06-2003 à 14:16:25    

spiritous a écrit :

Mmm Ok, j'y vois déjà plus clair :)
mais je comprends plus quelque chose : comment ce fait il alors que les tableaux sont des objets ?    


Au niveau de la définition du langage, les tableaux sont assez bâtards : ce sont plus ou moins des instances d'Object, mais sans aucune méthode, et avec un seul attribut ("length" ).
 
D'ailleurs, vous remarquerez que la méthode statique System.arraycopy attend des paramètre de type Object pour les 2 arguments tableaux...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed