Comment marche toArray() de java.util.ArrayList() ?

Pratana Messages postés 77 Date d'inscription jeudi 1 avril 2004 Statut Membre Dernière intervention 19 avril 2018 - 12 août 2004 à 16:49
Pratana Messages postés 77 Date d'inscription jeudi 1 avril 2004 Statut Membre Dernière intervention 19 avril 2018 - 13 août 2004 à 11:04
jai pas trop saisit comment ca marche en fait.
j'essaye de classer une ArrayList constitué d'objet diverse. (regardez mon code) et de classer ca par ordre numérique "point"
je me demande si avec toArray() j'y arriverais ?

--------------
mon code :
--------------
//mon objet carte :
class cards {
int point;
int couleur;
int valeur;
boolean selected;
}
//programme principal
class programme{
//créer un paquet
ArrayList Paquet= new ArrayList();

void init(){
for( int i=0; i<32; i++){
cards Temp = new cards();
Temp.point = (int)Math.Random() * 32;
Temp.couleur = (int)Math.floor(Temp.point / 4);
Temp.valeur = Temp.point - (Temp.couleur * 8);
Paquet.add( Temp );
}
}
//y a d'autre code ici sans rapport.
}
--------------
j'utilise une variable boolean pour marquer des cartes afin de les enlever du jeu plus tard. j'ai essayé des boucles for et do pour les enlever tous d'un coup mais ca plante. il ya une fonction dans arrylist qui permet d'enlever un meme type d'objet de la liste ?
ici je voudrais enlever tous ceux qui sont à selected true...
si quelqu'un peut me renseigner à ce sujet, ça m'avancera beaucoup.
ps : je suis en train de programmer un jeu de "belote découverte" pour ceux que ca intérressent...

-----------------------------------------------------------
C est pas une balle dans le bras qui me fera plier le genou...

4 réponses

cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 11
12 août 2004 à 18:33
:big) Neodante :big)

Tu connais les itérateurs -> 'iterator' qui va te permettre de parcourir ta collection (arraylist) sans aucune erreur bien que les for et while ne devraient pas poser de problèmes !
Je me garde de mettre le code pour retirer les objets .. au pire regarde la javadoc ! ;-)
@+

[Responsable www.neogamedev.com]
0
cs_GodConan Messages postés 2113 Date d'inscription samedi 8 novembre 2003 Statut Contributeur Dernière intervention 6 octobre 2012 12
12 août 2004 à 19:40
GodConan :clown)

Moi je serai interresser par de belles images d un jeu de carte complet ... ;o)
0
Pratana Messages postés 77 Date d'inscription jeudi 1 avril 2004 Statut Membre Dernière intervention 19 avril 2018
12 août 2004 à 19:58
iterator? je connais pas trop. j'essayerais.
sinon je fais qu'avec des do ou des for, mais ça plante à un moment et ca me prend la tête ...
voici sur quoi je suis :
-------------
int nb = 0;
while( nbCardSel > 0 && nb < ply[Num].hand.size() ){
cards Temp = (cards)paquet.get(i);
if( Temp.select == 1 ){
//effacer cette carte de la main
paquet.remove( nb );
nbCardSel--;
}
nb++;
}
--------------
nbCardSel est le nombre de carte que j'ai selectionnées...

---------------

concernant les cartes, j'ai les 64 cartes format 71*96 ou bien 54*72 en 19 couleures. elles sont communes. de la à etre belles, c'est une question de gout

-----------------------------------------------------------
C est pas une balle dans le bras qui me fera plier le genou...
0
Pratana Messages postés 77 Date d'inscription jeudi 1 avril 2004 Statut Membre Dernière intervention 19 avril 2018
13 août 2004 à 11:04
yes !! voilà, j'ai trouvé: en fait j'ai pas redimensionné mon arraylist() avec trimToSize() après avoir effacé une valeur. alors à un moment, ça dépassait la capacité.
J'aime pas les insectes !...

-----------------------------------------------------------
C est pas une balle dans le bras qui me fera plier le genou...
0
Rejoignez-nous