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

  FORUM HardWare.fr
  Programmation
  Java

  Iterator a la maison ou au front?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Iterator a la maison ou au front?

n°1278474
milootoolo​o
Posté le 06-01-2006 à 22:24:31  profilanswer
 

Bonjour,
 
Je developpe un petit jeu. Je travaillais avec un double tableau d'objets Cases pour le damier du jeu.
J'ai décidé d'implanter une classe Matrice qui extends AbstractCollection.
Mais j'ai quelques petits problèmes dans le rete de mon jeu pour utiliser la boucle for étendue..
 
Je vous met quelques sources:
 
Classe Matrice:
 

Code :
  1. package Moteur;
  2. import java.util.*;
  3. public class Matrice<E> extends AbstractList implements Iterable {
  4. ArrayList<E> matrice=new ArrayList<E>();
  5. int coteX;
  6. int coteY;
  7. E get(int x, int y) throws IllegalArgumentException{
  8.  if(x<0 || x>=coteX || y<0 || y>=coteY )
  9.   throw new IllegalArgumentException();
  10.  return get(coteX*y+x);
  11. }
  12. public E get(int index) throws IllegalArgumentException{
  13.  if(index<0 || index>=size())
  14.   throw new IllegalArgumentException();
  15.  return matrice.get(index);
  16. }
  17. public int size(){
  18.  return matrice.size();
  19. }
  20. public Iterator<E> iterator(){
  21.  return matrice.iterator();
  22. }
  23. public Iterator<E> iterateurPionBloque(Position p){
  24.  return new IterateurPionBloque<E>(this,p);
  25. }
  26. public void add(E o){
  27.  matrice.add(o);
  28. }
  29. Matrice(int coteX,int coteY){
  30.  this.coteX=coteX;
  31.  this.coteY=coteY;
  32. }
  33. }
  34. ...


 
 
Et la manière dont je veux utiliser ma matrice:
 

Code :
  1. public Matrice<Case> cases = new Matrice<Case>(Cstes.cotePlateauX,Cstes.cotePlateauY);


 
Jusqu'ici pas de problèmes..
 
Mais la:
 

Code :
  1. for(Matrice<Case> m:cases)
  2. m.initialisation();


 
Ca me souligne cases en rouge et ca me dit: cannot convert Object to Case.
 
Ca c'est sur qu'on peut pas convertit un objet en Case, mais c'est pas ce que j'ai voulu faire..
J'ai juste parcourir mes Cases..
 
Si quelqu'un a une idée de comment parcourir mes cases avec la boucle for étendue..
 
 
Merci


Message édité par milootooloo le 07-01-2006 à 02:40:35
mood
Publicité
Posté le 06-01-2006 à 22:24:31  profilanswer
 

n°1278518
souk
Tourist
Posté le 06-01-2006 à 23:41:27  profilanswer
 

spa plutot  
 

Code :
  1. for(Case case:cases){
  2. }


? [:petrus75]

n°1278532
milootoolo​o
Posté le 07-01-2006 à 00:07:46  profilanswer
 

Merci de ta réponse..
 
Heu sinon, j'ai une question idiote..
Le mieux, c'est de définir les itérateurs la ou on les utilise ou dans le fichier du conteneur associé?
Merci


Message édité par milootooloo le 07-01-2006 à 02:33:49

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Iterator a la maison ou au front?

 

Sujets relatifs
IteratorProblème Front Page
BufferedReader qui implémente IteratorCompatibilité avec front page 4.0
Boucle for et list::iteratorSTL - multimap - ou le mystère de l'iterator perdu (non résolu)
Afficher 2 textes de frontComment créer une DK boot fait maison
Iteratorproblème avec les layers (Front Page)
Plus de sujets relatifs à : Iterator a la maison ou au front?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR