salut tout le monde donc j'ai presque fini mon application filmotheque sauf que ça plante à un moment donné, il ya tout qui marche comme je veux sauf quand j'entre un numero de film à supprimer ça me le supprime mais ça n'afficher pas la contenu de ma filmotheque après, je sais pas pourquoi voici le code les gars:
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 Mafilmotheque.java package ftech.Class; public class MaFilmotheque { public static void insérer() { ListeFilms L= new ListeFilms(); L.initialise(); int i=0; System.out.print("voulez vous ajouter un film ?\n"); char rep; rep=Lire.c(); while(rep == 'o') { System.out.print("saisissez le titre de votre film:"); String tit=Lire.S(); System.out.print("saisissez l'année de sortie de votre film:"); int ann=Lire.i(); System.out.print("saisissez le nom du réalisateur de votre film:"); String réa=Lire.S(); System.out.print("saisissez le genre de votre film:"); String gen=Lire.S(); Film f= new Film(tit,ann,réa,gen); L.ajoute(f); i++; System.out.print("le film numero "+i+" a bien été ajouté\n"); System.out.print("voulez vous ajouter un autre film ?\n"); rep=Lire.c(); } //L.affficher(); L.supprimer(); //L.affficher(); } public static void main(String [] arg) { insérer(); } }
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
64
65
66
67 ListeFilms.java package ftech.Class; import java.util.*; public class ListeFilms { public TreeSet<Film> t; public void initialise() { t = new TreeSet<Film>(); } public boolean ajoute(Film f) { if (t.add(f)) { System.out.print("l'ajout s'est bien deroulé\n"); return true; } else { System.out.print("l'ajout n'est pas effectué\n"); return false; } } public void affficher() { Iterator<Film> it = t.iterator(); while (it.hasNext()) System.out.println(((Film) (it.next())).toString()); } public void supprimer() { int num = 1; Iterator<Film> it = t.iterator(); while (it.hasNext()) { Film f = (Film) (it.next()); System.out.println(f + " ------> " + num); num++; } System.out .println("saisissez le numéro du film que vous désirez supprimer de la collection:"); int m = Lire.i(); it = t.iterator(); num = 1; while (it.hasNext()) { if (num == m) { boolean b; b = t.remove(it.next()); if (b) { System.out.print("le film numéro " + num + " a bien été supprimé"); } else { System.out.print("le film numéro" + num + "n'a pas été supprimé"); } } num++; affficher(); } } }
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
64
65
66
67
68
69 Film.java package ftech.Class; public class Film implements Comparable<Film>{ private String titre; private int année; private String réalisateur; private String genre; /*public void saisir(){ System.out.print("saisissez le titre de votre film:"); titre=Lire.S(); System.out.print("saisissez l'année de sortie de votre film:"); année=Lire.i(); System.out.print("saisissez le nom du réalisateur de votre film:"); réalisateur=Lire.S(); System.out.print("saisissez le genre de votre film:"); genre=Lire.S(); }*/ public Film(String tit,int ann,String réa,String gen) { titre=tit; année=ann; réalisateur=réa; genre=gen; } public void afficher(){ System.out.print("le titre du film est: "+titre+ "\n"); System.out.print("l'année de sortie du film est: "+année+ "\n"); System.out.print("le réalisateur du film est: "+réalisateur+ "\n"); System.out.print("le genre du film est: "+genre+ "\n"); } public void setFilm(String tit, int ann, String réa, String genr){ titre= tit; année= ann; réalisateur= réa; genre= genr; } public String getTitre(){ return titre; } public int getAnn(){ return année; } public String getRéal(){ return réalisateur; } public String getGenre(){ return genre; } public String toString(){ return (titre+" "+année+" "+réalisateur+" "+genre); } public int compareTo(Film f){ int comptitre = getTitre().compareTo(f.getTitre()); return comptitre != 0 ? comptitre : getRéal().compareTo(f.getRéal()); } }et grand 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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115 Lire.java package ftech.Class; import java.io.*; public class Lire { public static String S() // Lire un String { String tmp = ""; char C='\0'; try { while ((C=(char) System.in.read()) !='\n') { if (C != '\r') tmp = tmp+C; } } catch (IOException e) { System.out.println("Erreur de frappe"); System.exit(0); } return tmp; } // fin de S() public static byte b() // Lire un entier byte { byte x=0; try { x=Byte.parseByte(S()); } catch (NumberFormatException e) { System.out.println("Format numérique incorrect"); System.exit(0); } return x ; } public static short s() // Lire un entier short { short x=0; try { x=Short.parseShort(S()); } catch (NumberFormatException e) { System.out.println("Format numérique incorrect"); System.exit(0); } return x ; } public static int i() // Lire un entier { int x=0; try { x=Integer.parseInt(S()); } catch (NumberFormatException e) { System.out.println("Format numérique incorrect"); System.exit(0); } return x ; } public static long l() // Lire un entier long { long x=0; try { x=Long.parseLong(S()); } catch (NumberFormatException e) { System.out.println("Format numérique incorrect"); System.exit(0); } return x ; } public static double d() // Lire un double { double x=0.0; try { x=Double.valueOf(S()).doubleValue(); } catch (NumberFormatException e) { System.out.println("Format numérique incorrect"); System.exit(0); } return x ; } public static float f() // Lire un float { float x=0.0f; try { x=Float.valueOf(S()).floatValue(); } catch (NumberFormatException e) { System.out.println("Format numérique incorrect"); System.exit(0); } return x ; } public static char c() // Lire un caractere { String tmp=S(); if (tmp.length()==0) return '\n'; else { return tmp.charAt(0); } } }
Partager