tof008
Messages postés695Date d'inscriptionjeudi 5 mai 2005StatutMembreDernière intervention 5 janvier 2010
-
4 nov. 2006 à 11:53
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013
-
4 nov. 2006 à 12:56
Bonjour à tous!
J'ai un petit probleme concernant un micro projet que je dois rendre.
Je dois créer une ArrayList qui contient des instances, pour ensuite les écrire dans un fichier. Pour plus de détails, j'ai une classe machine modélisant une machine qui a comme parametre un nom, une IP,... et je dois enregstrer tout ca dans un fichier. Pour cela je dois créer une ArrayList d'instances de machines (donc de machines) pour pouvoir travailler dessus. Ensuite, j'ecrase les données de mon fichier pour y mettre l'ArrayList modifiée..
Est ce que quelqu'un pourrait me donner une piste? Comment mettre des instances dans une ArrayList?
Je vous remercie d'avance pour l'auide que vous pourrez m'apporter!
(Si la réponse vous convient, appuyez sur réponse acceptée...).
Twinuts
Messages postés5375Date d'inscriptiondimanche 4 mai 2003StatutModérateurDernière intervention14 juin 2023111 4 nov. 2006 à 12:52
Salut,
enfait il n'y a qu'avec les string que tu n'es pas obligé de faire un new exemple:String str "hello"; revient a faire String str new String("hello");
sinon pour le reste faut creer un instance soit pour ton cas
listeService.add( new Machine());
ou encore
listeService.add( new Machine(....));//les .... represente les arguments du constructeur si il y a
------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 4 nov. 2006 à 12:56
Bah en fait, si j'ai bien compris ton problème, c'est que tu veux ajouter des instances d'objets dans une ArrayList.
Alors soit tu fait comme te l'as proposé twinuts :
Machine oMachine = new Machine();
Array.add(oMachine);
Soit tu crée une classe qui te permettra de récupèrer une nouvelle instance de Machine, tout en l'ajoutant dans l'arraylist, donc une méthode createMachine :
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 4 nov. 2006 à 11:59
Bah une instance, c'est un objet... donc il te suffit de stocker tout les objets de type machine (lors de leur création par exemple => design pattern fabrique).
Vous n’avez pas trouvé la réponse que vous recherchez ?
Twinuts
Messages postés5375Date d'inscriptiondimanche 4 mai 2003StatutModérateurDernière intervention14 juin 2023111 4 nov. 2006 à 12:11
Salut,
et pour les int,float,double, et tout type primitif du genre si tu es en jdk 1.5 pas de malaise il y a grdtion de l'autoboxing sinon faut passer par les class wrapper soit
int -> java.lang.Interger
long -> java.lang.Long
double -> java.lang.Double
boolean -> java.lang.Boolean
......
vu qu'un arraylist prends des objet et non des type primitif ...
------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."
tof008
Messages postés695Date d'inscriptionjeudi 5 mai 2005StatutMembreDernière intervention 5 janvier 201033 4 nov. 2006 à 12:23
Merci DarkSidious ( de l'aide en vb, de l'aide en java, je vais bientot t'employer à temps plein lol), j'ai recherché le design pattern fabrique sur google, je vois pas trop le principe, mais je vais approfondir ca...
Est ce que tu pourrai juste me montrer un petit exemple d'ajout d'une instance dans une arrayList? Un truc vite fait qui pourrait debloquer mon pauvre cerveau lol!
J'espere ne pas abuser!!!!
Merci!
(Si la réponse vous convient, appuyez sur réponse acceptée...).
tof008
Messages postés695Date d'inscriptionjeudi 5 mai 2005StatutMembreDernière intervention 5 janvier 201033 4 nov. 2006 à 12:28
Merci Twinuts! mais pour remplir une ArrayList normale, aucun problème! Pour vous prouver que je peux quand même sortir une méthode en java (lol) voila mon code pour remplir une ArrayList avec les données d'un fichier :
try {
fr = new FileReader(cheminFichier);
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
BufferedReader br = new BufferedReader(fr);
try
{
//on transfere les données du fichier service dans une ArrayList de maniere à lister
// tous les services
while((texte = br.readLine()) != null)
{
listeService.add( texte);
}
br.close();
fr.close();
//il faut bien fermer le FileReader et le BufferedReader
C'est juste pour la remplir d'instances que je bloque... Mais j'ai quelques problèmes encore avec la prog objet. Ca viendra mais sur certains points, c'est trés flou...
(Si la réponse vous convient, appuyez sur réponse acceptée...).
tof008
Messages postés695Date d'inscriptionjeudi 5 mai 2005StatutMembreDernière intervention 5 janvier 201033 4 nov. 2006 à 12:37
donc si je fais ca :
Machine mach = new Machine(...)
while((texte = br.readLine()) != null)
listeService.add( Machine);//ici tu rajoute une instance de Machine dans ton arraylist
ca me permet de rajouter une instance à mon ArrayList?
Pour remplir d'instance, en fait je voulais dire ajouter des instances à mon ArrayList...
(Si la réponse vous convient, appuyez sur réponse acceptée...).