Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3465 connectés 

 


Dernière réponse
Sujet : Pour les pro du Java... une petite question sur les types!
benou ouais c'est exactement ca ! :O

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
benou ouais c'est exactement ca ! :O
darklord22

benou a écrit a écrit :

ouais mais bon quand même ... faut pas pousser non plus ...  




Le topic qui est censé attiré tout le monde hein :D
Je vois ce que tu veux dire. Ca m'énerve aussi ce genre d'approches.

benou mais bon, je suis ennervé aujourd'hui ... ca m'apprendra a pas dormir ...
benou ouais mais bon quand même ... faut pas pousser non plus ...
darklord22

benou a écrit a écrit :

je dirai encore plus : ca sert à quoi de poser la question "aux pros de Java" alors que c'est un problème de base et qu'on voit au 1er coup d'oeil que tu n'y connais quasiment rien en Java ??  




 
ttttt  :non:  
Ne sois pas si agressif, veux tu! :D

benou je dirai encore plus : ca sert à quoi de poser la question "aux pros de Java" alors que c'est un problème de base et qu'on voit au 1er coup d'oeil que tu n'y connais quasiment rien en Java ??
Bandenabos Je dirai qu'en plus, si tu retourne toujours le premier élément ça sert à rien !! Je verrais plutot :  
 
public Node[] lecture(Vector v)
{  
  Node[]      l_Nodes = new Node[v.size()];
  Enumeration l_Objects = v.elements();
  int         l_Index   = 0;
  while (l_Objects.hasModeElement())
     l_Nodes[i ++] = (Node)l_Objects.nextElement();
   
  return l_Nodes;  
}
benou je dirais même plus :  
 
public Node lecture(Vector v) {  
 return (Node) v.firstElement();  
}
iskream

pab29 a écrit a écrit :

Node n= new Node();    
n= (Node) v.firstElement();  
 
 
c'est con ça, ça sert à quoi de créer un new Node si c'est pour pas s'en servir ?  




exact :)

pab29 Node n= new Node();    
n= (Node) v.firstElement();  
 
 
c'est con ça, ça sert à quoi de créer un new Node si c'est pour pas s'en servir ?
iskream Je n'avais meme pas lu le code jusqu'au bout, il y a d'autres erreurs.
En voici un qui syntaxiquement devrait être correct :
 
Node Lecture(Vector v) { //Avec v contenant déjà des Node
 Node n= new Node();  
 n= (Node) v.firstElement();
 return(n);
}
iskream

phoenyx a écrit a écrit :

Merci beaucoup pour ta réponse... mais...
 
Mon problème est que le type des objet que j'ai placé dans la collection est un type que j'ai défini, appelons-le Node.
Ce Node est un type complexe puisqu'il s'agit en fait d'une classe avec plein de champs!
Mon problème est que le procédé que tu m'as indiqué ne fonctionne donc pas! Par exemple:
 
Node void Lecture(Vector v) { //Avec v contenant déjà des Node
  Node n= new Node();  
  Node n= (Node) v.firstElement();
  return(n);
}  




 
Déjà, si tu évitais de déclarer ta fonction avec "Node void...", et que tu mettais simplement "Node Lecture(Vector v) {..."
je crois que ca irais bcp mieux :)
Si ça ne fonctionne toujours pas, indique nous le message d'erreur exacte qui t'es retourné.
 
@+

Phoenyx Merci beaucoup pour ta réponse... mais...
 
Mon problème est que le type des objet que j'ai placé dans la collection est un type que j'ai défini, appelons-le Node.
Ce Node est un type complexe puisqu'il s'agit en fait d'une classe avec plein de champs!
Mon problème est que le procédé que tu m'as indiqué ne fonctionne donc pas! Par exemple:
 
Node void Lecture(Vector v) { //Avec v contenant déjà des Node
  Node n= new Node();  
  Node n= (Node) v.firstElement();
  return(n);
}
iskream En anglais, on utiliseras le terme "cast" pour designer cette methode. Tu trouveras plein de docs sous ce terme la.
[FDS] La conversion d'une instance d'une classe en une instance d'une autre classe s'appelle le transtypage, en Java ca marche comme ça:
 
Vector v = new Vector();
v.add("toto" );
String nom = (String) v.firstElement();
 
En Java on ne peut pas typer les collections, tu dois donc indiquer le type que tu veux avoir à chaque récupération d'un élément. ( Ca va peut-être changer un jour car c'est en cours de discussion au JCP JSR : Add Generic Types To The JavaTM Programming Language)
Phoenyx Salut à tous!
 
Je suis en train de commencer mon travail de fin d'étude en Java et petit à petit, je découvre ce merveilleux langage... mais:
 
En utilisant les List et autres structures fournies dans java.util, j'obtiens des erreurs de conversion de type à la compilation.  
 
En effet, les fonctions fournies commme  
 
public Object get(int index)
 
renvoient un type "Object" et.. si on place la valeur de retour dans une variable qui a le véritable type des éléments(par exemple List si on a une liste de listes)et PAF, une erreur!  
:??:  
Que faire? Y a-t-il une astuce? Faut-il créer soit même une fonction de conversion? Comment faire?
 
Merci d'avance. :wahoo:

 

[edtdd]--Message édité par phoenyx--[/edtdd]


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)