Recherche d'une donnée en Java
Bonsoir a tous , je suis un petit programmeur débutant :lol: comme projet de fin d'année je dois faire un " genre " de programme de gestion de bar.
Je vous met les codes et je vous pose mon problèmme
Programme principal(Main) faisant appel au différentes méthodes
Code:
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
| import java.util.*;
public class TFE {
public static void main(String[] args) {
byte choix=0;
methodes B= new methodes();
Scanner lectureClavier = new Scanner(System.in);
//Appel du menu
do {
System.out.println("1:consomation");
System.out.println("2:Voir le stock");
System.out.println("3:Crédit des personnes");
System.out.println("4:Modifier les boissons");
System.out.println("5:Modifier les prix");
System.out.println("6:Ventes du jour");
System.out.println("7:fermer le programme");
//Selection du menu
choix = lectureClavier.nextByte();
switch (choix) {
//Choix:Payer
case 1 : B.payer();
//Choix Voir le stock
case 2 :
B.stock();
break;
//Choix Crédit des personnes
case 3 :
B.crédit();
break;
//Choix Modifier les boissons
case 4 :
B.modifierboissons();
break;
//Choix Modifier les prix
case 5 :
B.modifierprix();
break;
//Choix ventes du jour
case 6 :
B.ventesjour();
break;
default :
System.out.println("Cette option n'existe pas ");
}
//Choix Quitter
}while (choix!=7);
}
} |
Classe comprenant les différentes méthodes
import java.util.ArrayList;
Code:
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 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171
| import java.util.Scanner;
public class methodes {
int stock2;
private ArrayList<Stock> liste;
private ArrayList<credit> listecredit;
Scanner lectureClavier = new Scanner(System.in);
public methodes() {
liste = new ArrayList<Stock>();
}
public void afficheLesBoissons() {
int nbboisson = liste.size();
if (nbboisson > 0) {
for (Stock e : liste)
e.afficheUneBoisson();
}
}
public void payer(){
}
public void stock(){
Scanner lectureClavier= new Scanner (System.in);
do {
System.out.println("1:afficher le stock");
System.out.println("2:modifier le stock");
System.out.println("3:Quiter");
stock2 = lectureClavier.nextInt();
switch (stock2) {
case 1: int nbboisson = liste.size();
if (nbboisson > 0) {
for (Stock e : liste) {
e.afficheUneBoisson();
}
}
case 2:
liste.add(new Stock());
break;
default :
System.out.println("Cette option n'existe pas ");
}}
while (stock2==3);
}
public void modifierboissons(){
int choix = 0;
do {System.out.println("1:Ajouter une boisson");
System.out.println("2:Supprimer une boisson");
System.out.println("3:Quiter");
choix = lectureClavier.nextByte();
switch (choix) {
//Choix ajouter boisson
case 1: liste.add(new Stock());
break;
//fin choix ajouter boisson
//Choix supprimer boisson
case 2:
System.out.println("Quelle boisson voulez vous supprimer?");
int nbboisson = liste.size();
if (nbboisson > 0) {
for (Stock e : liste) {
e.afficheUneBoisson();
}
}
choix=lectureClavier.nextInt();
liste.remove(choix);
default :
System.out.println("Cette option n'existe pas ");
//Fin choix supprimer boisson
}}
while (choix!=3);
}
public void modifierprix(){
}
public void ventesjour(){
}
public void crédit(){
int choix;
do{
System.out.println("1:Afficher la liste des crédit");
System.out.println("2:Ajouter une personne a la liste des crédit");
System.out.println("3:Modifier le crédit des personnes");
System.out.println("4:Quiter");
choix = lectureClavier.nextByte();
switch (choix) {
//Choix ajouter boisson
case 1:
int nbcredit = listecredit.size();
if (nbcredit > 0) {
for (credit e : listecredit) {
e.afficheUnCredit();
}
}
case 2: listecredit.add(new credit());
break;
case 3:
break;
default :
System.out.println("Cette option n'existe pas ");
}}
while(choix!=4);
}
public void classedetest(){
} |
}
Et finalement la classe permettant l'ajout d'une nouvelle donnée a mes listes
Code:
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
| import java.util.*;
public class Stock {
private String nom,ref;
private double prix;
//Constructeur Article => Ajouter une boisson
public Stock(){
Scanner lectureClavier = new Scanner(System.in);
System.out.print("Entrez le nom de la boisson : ");
nom = lectureClavier.next();
System.out.print("Entrez une référence pour la boisson : ");
ref = lectureClavier.next();
System.out.print("Entrez le prix de la boisson a l'unité");
prix = lectureClavier.nextDouble();
}
//Constructeur AfficheUneBoisson=> Afficher nom+référence+prix
public void afficheUneBoisson() {
System.out.println("Le/La " +nom+ " Qui a pour référence " +ref+ " Vaut " +prix);
}
} |
Veuillez m'excuser pour la présentation un peu brouillons de mon programme mais justement c'est un " brouillon" et il n'est pas fini car je suis bloquer.
:cry:
Je vous explique mon problèmme.
Comme vous pouvez le voir j'utilise des listes (ArrayList),mon problèmme est que j'aimerais pouvoir a l'aide d'une chaine de caractère pouvoir reprendre différentes données de mes listes.
Par exemple:
Pour ma méthodes "modifierprix"
Imaginons que j'ai déja déclarer dans mon stock ces données la.
1: nom:Bière, référence:Bi, prix:1,50
2: nom:Coca, référence:C, prix:1,50
3: nom:Vodka, référence:Vod, prix:3,00
J'aimerais pas exemple modifier le prix de ma vodka , ( Je rappel que ces 3 variables sont dans une seule liste)
Que le programme me demande "De quelle boisson voulez vous modifier le prix?" et que la je rentre soit Vodka , ou Vod , que le programme me recherche dans ma liste ma Vodka et m'indique le prix , pour pouvoir le modifier apres.
Je me suis déja beaucoup renseigner , pas moyen de trouver , j'ai deja pensser a afficher toute ma liste pour récuperer l'indice de la ligne mais dans le cas ou il y a 300 boissons différentes ce n'est pas pratique .
J'éspère que quelqu'un pourait m'aider car je suis vraiment bloquer, J'éspère avoir été clair ( C'est la première fois que je poste sur internet pour demander de l'aide ):oops:
Bonne soirée a tous