bonjour, je suis débutante en java , je souhaite ajouter une personne ,Si le nom de la personne existe je dois ajouter une boite de dialogue pour notifier l’utilisateur que cette personne existe. Les champs doivent être vidés après chaque ajout.
je travaille avec les arrayLists , voilà le code de ma classe class_personne :
Et le code de ma classe Stockage qui contient la liste des personnes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55 public class class_personne { private String Nom; private String Prenom; private String Adresse ; private Date DateNaissance ; public class_personne(String Nom, String Prenom, String Adresse, Date DateNaissance) { this.Nom = Nom; this.Prenom = Prenom; this.Adresse = Adresse; this.DateNaissance = DateNaissance; } public String getNom() { return Nom; } public void setNom(String Nom) { this.Nom = Nom; } public String getPrenom() { return Prenom; } public void setPrenom(String Prenom) { this.Prenom = Prenom; } public String getAdresse() { return Adresse; } public void setAdresse(String Adresse) { this.Adresse = Adresse; } public Date getDateNaissance() { return DateNaissance; } public void setDateNaissance(Date DateNaissance) { this.DateNaissance = DateNaissance; } public int getAge() { Date d1 = new Date(); // long a= d1.getTime()-this.DateNaissance.getTime(); //int b=(int)a/(1000*60*60*24*30*12); // return b; int c= d1.getYear()-DateNaissance.getYear(); return c ; } }
}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63 public class Stockage { public static ArrayList <class_personne> lp; static boolean exist(String n) { boolean t=false; for (int i=0;i<lp.size();i++){ if (lp.get(i).getNom().equals(n)){ t=true; } } return t; } static void ajouter(class_personne p) { lp.add(p); } static void supprimer(String n) { for(int i=0 ; i <lp.size() ; i++) { if(lp.get(i).getNom() == n) { lp.remove(i); } } } static void rechercher(String s) { for( int i = 0 ; i< lp.size() ; i++) { // if(lp.get(i).getNom().equals(s)) if(lp.get(i).getNom().contains(s)) { for(class_personne element : lp) { System.out.println(element); } } } //------------------------------------ Iterator i = lp.iterator(); while(i.hasNext()) { System.out.println(i.next()); } } static void modifier(String nom, class_personne pers) { for (int i = 0 ; i<lp.size(); i++) { if(lp.get(i).getNom().equals(nom)) { lp.get(i).setNom(pers.getNom()); lp.get(i).setPrenom(pers.getPrenom()); lp.get(i).setAdresse(pers.getAdresse()); lp.get(i).setDateNaissance(pers.getDateNaissance()); } } }
et enfin le code d'ajout (contient des erreurs ) qui va ajouter ce que j'ai tapé dans les champs (jtextfields) dans mon ArrayList , je ne sais pas comment gérer les Date , déjà j'ai un champs de type Date dans les propriétés de ma classe class_Personne que je souhaite récupérer son contenu depuis le jTextfiels (jDN) et l'ajouter à mon ArrayList :
de l'aide SVP ...Merci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 private void bntAjoutActionPerformed(java.awt.event.ActionEvent evt) { // ArrayList <class_personne> ar; JOptionPane j = new JOptionPane(); if (jNom.getText().isEmpty() || jPrenom.getText().isEmpty() || jAdress.getText().isEmpty() ||jDN.getText().isEmpty()) { j.showMessageDialog(null," error remplissez les champs !!" , "error", JOptionPane.ERROR_MESSAGE); } else { String getn= jNom.getText(); if (Stockage.exist(getn)) { //------------------------------------------- String n= jNom.getText(); String p= jPrenom.getText(); String ad= jAdress.getText(); DateFormat t = new SimpleDateFormat("dd/MM/yy"); String datu= jDN.getText(); Date dateParse=null; try { dateParse = t.parse(datu); } catch (ParseException ex) { // Logger.getLogger(GestionPersonne.class.getName()).log(Level.SEVERE, null, ex); } //------------------------------------------- class_personne c=new class_personne(n, p, ad, dateParse); Stockage.ajouter(c); j.showMessageDialog(null ,n +" "+p+" "+ad+ " "+ dateParse ,"info", JOptionPane.INFORMATION_MESSAGE); } jNom.getText().equals(""); jPrenom.getText().equals(""); jAdress.getText().equals(""); jDN.getText().equals(""); } }
Partager