Bonjour,
je cherche le moyen de parcourir un à un toutes les instances d'une classe
en fait, ces objets représentes des objets réels déposés au sein de
différentes pièces (pas beaucoup d'objets et pas beaucoup de salles),
quand
le joueur rentre dans la salle, je voudrais regarder chaque objet pour
savoir lesquels se trouvent dans cette salle.
une autre solution serait de créer une classe qui gère ces objets (via
HashMap etc...), mais ça ne me réjouit pas trop et j'ai pour contrainte
d'avoir le moins de classe possible
(Pour ceux qui connaissent, l'environnement de base est "the world of
zuul")
merci :)
Vincent Courcelle
http://www.tubededentifrice.com et http://www.france-jeunes.net
Bonjour,
je cherche le moyen de parcourir un à un toutes les instances d'une classe
en fait, ces objets représentes des objets réels déposés au sein de
différentes pièces (pas beaucoup d'objets et pas beaucoup de salles),
quand
le joueur rentre dans la salle, je voudrais regarder chaque objet pour
savoir lesquels se trouvent dans cette salle.
une autre solution serait de créer une classe qui gère ces objets (via
HashMap etc...), mais ça ne me réjouit pas trop et j'ai pour contrainte
d'avoir le moins de classe possible
(Pour ceux qui connaissent, l'environnement de base est "the world of
zuul")
merci :)
Vincent Courcelle
http://www.tubededentifrice.com et http://www.france-jeunes.net
Bonjour,
je cherche le moyen de parcourir un à un toutes les instances d'une classe
en fait, ces objets représentes des objets réels déposés au sein de
différentes pièces (pas beaucoup d'objets et pas beaucoup de salles),
quand
le joueur rentre dans la salle, je voudrais regarder chaque objet pour
savoir lesquels se trouvent dans cette salle.
une autre solution serait de créer une classe qui gère ces objets (via
HashMap etc...), mais ça ne me réjouit pas trop et j'ai pour contrainte
d'avoir le moins de classe possible
(Pour ceux qui connaissent, l'environnement de base est "the world of
zuul")
merci :)
Vincent Courcelle
http://www.tubededentifrice.com et http://www.france-jeunes.net
en fait, ces objets représentes des objets réels déposés au sein de
différentes pièces (pas beaucoup d'objets et pas beaucoup de salles), quand
le joueur rentre dans la salle, je voudrais regarder chaque objet pour
savoir lesquels se trouvent dans cette salle.
en fait, ces objets représentes des objets réels déposés au sein de
différentes pièces (pas beaucoup d'objets et pas beaucoup de salles), quand
le joueur rentre dans la salle, je voudrais regarder chaque objet pour
savoir lesquels se trouvent dans cette salle.
en fait, ces objets représentes des objets réels déposés au sein de
différentes pièces (pas beaucoup d'objets et pas beaucoup de salles), quand
le joueur rentre dans la salle, je voudrais regarder chaque objet pour
savoir lesquels se trouvent dans cette salle.
Vincent,en fait, ces objets représentes des objets réels déposés au sein de
différentes pièces (pas beaucoup d'objets et pas beaucoup de salles),
quand
le joueur rentre dans la salle, je voudrais regarder chaque objet pour
savoir lesquels se trouvent dans cette salle.
Qu'est-ce qui ne convient pas dans la solution normale, raisonnable, qui
consiste à gérer une association 1-N de Salle à Objet ?
public class Salle {
private List objetsContenus;
...etc...
Vincent,
en fait, ces objets représentes des objets réels déposés au sein de
différentes pièces (pas beaucoup d'objets et pas beaucoup de salles),
quand
le joueur rentre dans la salle, je voudrais regarder chaque objet pour
savoir lesquels se trouvent dans cette salle.
Qu'est-ce qui ne convient pas dans la solution normale, raisonnable, qui
consiste à gérer une association 1-N de Salle à Objet ?
public class Salle {
private List objetsContenus;
...etc...
Vincent,en fait, ces objets représentes des objets réels déposés au sein de
différentes pièces (pas beaucoup d'objets et pas beaucoup de salles),
quand
le joueur rentre dans la salle, je voudrais regarder chaque objet pour
savoir lesquels se trouvent dans cette salle.
Qu'est-ce qui ne convient pas dans la solution normale, raisonnable, qui
consiste à gérer une association 1-N de Salle à Objet ?
public class Salle {
private List objetsContenus;
...etc...
ça fait une duplication des données dans 2 endroits différents
sans compter le fait qu'un objet peut ici être dans plusieurs salles à la
fois (si jamais il y a une erreur de code par exemple)
dans ma logique, il est plus logique que "salle" soit un attribut de
l'objet
en question, comme son poids, son nom, etc...
j'ai implémenté la méthode de la WeakReference donnée par Xavier,
seulement
j'ai un probleme après avec le parcours de l'ArrayList (cf le pointeur
dans
le code suivant, vers la fin)il me fait une erreur de compilation
"incompatibles types - found java.lang.Object but expected Item" : (le
code
de la classe entière se trouve à la fin)
ça fait une duplication des données dans 2 endroits différents
sans compter le fait qu'un objet peut ici être dans plusieurs salles à la
fois (si jamais il y a une erreur de code par exemple)
dans ma logique, il est plus logique que "salle" soit un attribut de
l'objet
en question, comme son poids, son nom, etc...
j'ai implémenté la méthode de la WeakReference donnée par Xavier,
seulement
j'ai un probleme après avec le parcours de l'ArrayList (cf le pointeur
dans
le code suivant, vers la fin)il me fait une erreur de compilation
"incompatibles types - found java.lang.Object but expected Item" : (le
code
de la classe entière se trouve à la fin)
ça fait une duplication des données dans 2 endroits différents
sans compter le fait qu'un objet peut ici être dans plusieurs salles à la
fois (si jamais il y a une erreur de code par exemple)
dans ma logique, il est plus logique que "salle" soit un attribut de
l'objet
en question, comme son poids, son nom, etc...
j'ai implémenté la méthode de la WeakReference donnée par Xavier,
seulement
j'ai un probleme après avec le parcours de l'ArrayList (cf le pointeur
dans
le code suivant, vers la fin)il me fait une erreur de compilation
"incompatibles types - found java.lang.Object but expected Item" : (le
code
de la classe entière se trouve à la fin)
Salut,
Moi j'aurai tendance à te conseiller,
(si ton projet est amené à devenir relativement complexe)
d'avoir un modèle de données propre
ex dans ton cas :
un classe Joueur une classe Salle
et une classe Affectation qui gere des relations N/N
Ca te simplifiera la prog par la suite
Salut,
Moi j'aurai tendance à te conseiller,
(si ton projet est amené à devenir relativement complexe)
d'avoir un modèle de données propre
ex dans ton cas :
un classe Joueur une classe Salle
et une classe Affectation qui gere des relations N/N
Ca te simplifiera la prog par la suite
Salut,
Moi j'aurai tendance à te conseiller,
(si ton projet est amené à devenir relativement complexe)
d'avoir un modèle de données propre
ex dans ton cas :
un classe Joueur une classe Salle
et une classe Affectation qui gere des relations N/N
Ca te simplifiera la prog par la suite
dans ma logique, il est plus logique que "salle" soit un attribut de l'objet
en question, comme son poids, son nom, etc...
j'ai implémenté la méthode de la WeakReference donnée par Xavier,
Je vois vraiment pas l'utilité d'utiliser des références faibles dans
j'ai un probleme après avec le parcours de l'ArrayList (cf le pointeur dans
le code suivant, vers la fin)il me fait une erreur de compilation
"incompatibles types - found java.lang.Object but expected Item" :
/**
* Retourne tous les objets présents dans la salle sous forme de chaîne.
*/
public static String getStringObjectsByRoom(Room room)
{
String returnString="";
boolean okúlse;
Item thisItem;
ArrayList liste=Item.getObjectsByRoom(room);
Iterator i=liste.iterator();
while(i.hasNext())
{
if(ok)
{returnString+=", ";}
thisItem=i.next(); <-------------------------------- ici
returnString+=thisItem.getName();
ok=true;
}
return returnString;
}
dans ma logique, il est plus logique que "salle" soit un attribut de l'objet
en question, comme son poids, son nom, etc...
j'ai implémenté la méthode de la WeakReference donnée par Xavier,
Je vois vraiment pas l'utilité d'utiliser des références faibles dans
j'ai un probleme après avec le parcours de l'ArrayList (cf le pointeur dans
le code suivant, vers la fin)il me fait une erreur de compilation
"incompatibles types - found java.lang.Object but expected Item" :
/**
* Retourne tous les objets présents dans la salle sous forme de chaîne.
*/
public static String getStringObjectsByRoom(Room room)
{
String returnString="";
boolean okúlse;
Item thisItem;
ArrayList liste=Item.getObjectsByRoom(room);
Iterator i=liste.iterator();
while(i.hasNext())
{
if(ok)
{returnString+=", ";}
thisItem=i.next(); <-------------------------------- ici
returnString+=thisItem.getName();
ok=true;
}
return returnString;
}
dans ma logique, il est plus logique que "salle" soit un attribut de l'objet
en question, comme son poids, son nom, etc...
j'ai implémenté la méthode de la WeakReference donnée par Xavier,
Je vois vraiment pas l'utilité d'utiliser des références faibles dans
j'ai un probleme après avec le parcours de l'ArrayList (cf le pointeur dans
le code suivant, vers la fin)il me fait une erreur de compilation
"incompatibles types - found java.lang.Object but expected Item" :
/**
* Retourne tous les objets présents dans la salle sous forme de chaîne.
*/
public static String getStringObjectsByRoom(Room room)
{
String returnString="";
boolean okúlse;
Item thisItem;
ArrayList liste=Item.getObjectsByRoom(room);
Iterator i=liste.iterator();
while(i.hasNext())
{
if(ok)
{returnString+=", ";}
thisItem=i.next(); <-------------------------------- ici
returnString+=thisItem.getName();
ok=true;
}
return returnString;
}
Je vois vraiment pas l'utilité d'utiliser des références faibles dans
ce cas. Des références normales me semblent aussi utiles, et plus
simples d'utilisation.
Xavier, avais-tu une raison particulière pour conseiller les
WeakReference?
La raison que je vois est un problème de mémoire. Si tu n'utilises pas
Je vois vraiment pas l'utilité d'utiliser des références faibles dans
ce cas. Des références normales me semblent aussi utiles, et plus
simples d'utilisation.
Xavier, avais-tu une raison particulière pour conseiller les
WeakReference?
La raison que je vois est un problème de mémoire. Si tu n'utilises pas
Je vois vraiment pas l'utilité d'utiliser des références faibles dans
ce cas. Des références normales me semblent aussi utiles, et plus
simples d'utilisation.
Xavier, avais-tu une raison particulière pour conseiller les
WeakReference?
La raison que je vois est un problème de mémoire. Si tu n'utilises pas
La raison que je vois est un problème de mémoire. Si tu n'utilises pas
des WeakReferences, tu riques d'avoir des problèmes de mémoire. Le gc ne
récupèrera pas les objets en question, si le système vient à manquer de
mémoire. Avec des WeakReferences, oui.
La raison que je vois est un problème de mémoire. Si tu n'utilises pas
des WeakReferences, tu riques d'avoir des problèmes de mémoire. Le gc ne
récupèrera pas les objets en question, si le système vient à manquer de
mémoire. Avec des WeakReferences, oui.
La raison que je vois est un problème de mémoire. Si tu n'utilises pas
des WeakReferences, tu riques d'avoir des problèmes de mémoire. Le gc ne
récupèrera pas les objets en question, si le système vient à manquer de
mémoire. Avec des WeakReferences, oui.
On Thu, 07 Oct 2004 11:29:08 +0200, Vincent Courcelle wrote:dans ma logique, il est plus logique que "salle" soit un attribut de
l'objet
en question, comme son poids, son nom, etc...
Dans ma logique, j'aurais fait l'inverse. ;)
En fait, ça dépend de la manière dont tu utilises ton code et de tes
préférences personnelles.
Si tu "navigues" souvent dans le sens objet->salle (c-à-d que tu cherches
souvent à savoir dans quelle salle se trouve un objet donné), c'est plus
simple et plus rapide de mettre un attribut salle dans Objet. Si tu
navigues plus souvent dans l'autre sens (salle->objet), vaut mieux
conserver une liste des objets dans chaque salle.
Si tu navigues souvent dans les deux sens, fait les deux! (fait attention
à la cohérence des données, mais ton programme ne contient aucun bug,
n'est-ce pas? ;) )j'ai implémenté la méthode de la WeakReference donnée par Xavier,
Je vois vraiment pas l'utilité d'utiliser des références faibles dans
ce cas. Des références normales me semblent aussi utiles, et plus
simples d'utilisation.
Xavier, avais-tu une raison particulière pour conseiller les
WeakReference?j'ai un probleme après avec le parcours de l'ArrayList (cf le pointeur
dans
le code suivant, vers la fin)il me fait une erreur de compilation
"incompatibles types - found java.lang.Object but expected Item" :
/**
* Retourne tous les objets présents dans la salle sous forme de
chaîne.
*/
public static String getStringObjectsByRoom(Room room)
{
String returnString="";
boolean okúlse;
Item thisItem;
ArrayList liste=Item.getObjectsByRoom(room);
Iterator i=liste.iterator();
while(i.hasNext())
{
if(ok)
{returnString+=", ";}
thisItem=i.next(); <-------------------------------- ici
returnString+=thisItem.getName();
ok=true;
}
return returnString;
}
Faut ajouter un cast: thisItem=(Item)i.next();
On Thu, 07 Oct 2004 11:29:08 +0200, Vincent Courcelle wrote:
dans ma logique, il est plus logique que "salle" soit un attribut de
l'objet
en question, comme son poids, son nom, etc...
Dans ma logique, j'aurais fait l'inverse. ;)
En fait, ça dépend de la manière dont tu utilises ton code et de tes
préférences personnelles.
Si tu "navigues" souvent dans le sens objet->salle (c-à-d que tu cherches
souvent à savoir dans quelle salle se trouve un objet donné), c'est plus
simple et plus rapide de mettre un attribut salle dans Objet. Si tu
navigues plus souvent dans l'autre sens (salle->objet), vaut mieux
conserver une liste des objets dans chaque salle.
Si tu navigues souvent dans les deux sens, fait les deux! (fait attention
à la cohérence des données, mais ton programme ne contient aucun bug,
n'est-ce pas? ;) )
j'ai implémenté la méthode de la WeakReference donnée par Xavier,
Je vois vraiment pas l'utilité d'utiliser des références faibles dans
ce cas. Des références normales me semblent aussi utiles, et plus
simples d'utilisation.
Xavier, avais-tu une raison particulière pour conseiller les
WeakReference?
j'ai un probleme après avec le parcours de l'ArrayList (cf le pointeur
dans
le code suivant, vers la fin)il me fait une erreur de compilation
"incompatibles types - found java.lang.Object but expected Item" :
/**
* Retourne tous les objets présents dans la salle sous forme de
chaîne.
*/
public static String getStringObjectsByRoom(Room room)
{
String returnString="";
boolean okúlse;
Item thisItem;
ArrayList liste=Item.getObjectsByRoom(room);
Iterator i=liste.iterator();
while(i.hasNext())
{
if(ok)
{returnString+=", ";}
thisItem=i.next(); <-------------------------------- ici
returnString+=thisItem.getName();
ok=true;
}
return returnString;
}
Faut ajouter un cast: thisItem=(Item)i.next();
On Thu, 07 Oct 2004 11:29:08 +0200, Vincent Courcelle wrote:dans ma logique, il est plus logique que "salle" soit un attribut de
l'objet
en question, comme son poids, son nom, etc...
Dans ma logique, j'aurais fait l'inverse. ;)
En fait, ça dépend de la manière dont tu utilises ton code et de tes
préférences personnelles.
Si tu "navigues" souvent dans le sens objet->salle (c-à-d que tu cherches
souvent à savoir dans quelle salle se trouve un objet donné), c'est plus
simple et plus rapide de mettre un attribut salle dans Objet. Si tu
navigues plus souvent dans l'autre sens (salle->objet), vaut mieux
conserver une liste des objets dans chaque salle.
Si tu navigues souvent dans les deux sens, fait les deux! (fait attention
à la cohérence des données, mais ton programme ne contient aucun bug,
n'est-ce pas? ;) )j'ai implémenté la méthode de la WeakReference donnée par Xavier,
Je vois vraiment pas l'utilité d'utiliser des références faibles dans
ce cas. Des références normales me semblent aussi utiles, et plus
simples d'utilisation.
Xavier, avais-tu une raison particulière pour conseiller les
WeakReference?j'ai un probleme après avec le parcours de l'ArrayList (cf le pointeur
dans
le code suivant, vers la fin)il me fait une erreur de compilation
"incompatibles types - found java.lang.Object but expected Item" :
/**
* Retourne tous les objets présents dans la salle sous forme de
chaîne.
*/
public static String getStringObjectsByRoom(Room room)
{
String returnString="";
boolean okúlse;
Item thisItem;
ArrayList liste=Item.getObjectsByRoom(room);
Iterator i=liste.iterator();
while(i.hasNext())
{
if(ok)
{returnString+=", ";}
thisItem=i.next(); <-------------------------------- ici
returnString+=thisItem.getName();
ok=true;
}
return returnString;
}
Faut ajouter un cast: thisItem=(Item)i.next();