Souci de compilation en Java

Fermé
axelandre Messages postés 35 Date d'inscription mercredi 22 août 2007 Statut Membre Dernière intervention 22 septembre 2010 - 29 nov. 2007 à 15:56
asevere Messages postés 13084 Date d'inscription lundi 28 janvier 2002 Statut Webmaster Dernière intervention 23 novembre 2024 - 29 nov. 2007 à 17:19
Bonjour,

Je viens vous demander de l'aide car j'ai un souci en java.

Effectivement, je n'arrive pas à comprendre l'erreur lors de la compilation de mon main : "while expected }".Je comprend bie qu'il y a un souci avec une accolade (situé ligne 80) mais je ne vois pas le problème.

Voici mon code, qui est en fait un menu basic : (INFO : JE COMPILE EN MS-DOS)

import javax.swing.*;

public class Test 
{

	public static int menu(Produit p)
	{
		System.out.println("##########MENU##########");
		System.out.println("\n1) Creation d'un entrepot");
		
		if(p != null)
		{
			System.out.println("\n2) Ajouter un produit");
			System.out.println("\n3) Supprimer un produit");
			System.out.println("\n4) Modifier la quantite d'un produit");
			System.out.println("\n5) Afficher l'etat du depot");
			System.out.println("\n6) Afficher l'etat d'un produit");
		}
		System.out.println("\7) Quitter");
		System.out.println("Votre choix : ");
		
		return Console.readInt();
	}
	
	public static void main(String[] args) 
	{
		int choix = -1;
		Produit p = null;
		Depot d = null;
		
		do
		{
			choix = Test.menu(p);
			
			switch(choix)
			{
				case 1:
				{
					d = new Depot(Nom);
					break;
				}
				
				case 2:
				{
					int lenumero;
					String lelibelle;
					double lepu;
					int laquantite;
					
					String message = "Quel est le numero du produit ?";
					lenumero = Integer.parseInt(JOptionPane.showInputDialog(null, message));
					
					String message = "Quel est le libelle du produit ?";
					lelibelle = Integer.parseInt(JOptionPane.showInputDialog(null, message));
					
					String message = "Quel est le prix unitaire du produit ?";
					lepu = Integer.parseInt(JOptionPane.showInputDialog(null, message));
					
					String message = "Quelle est la quantite rentree en stock ?";
					laquantite = Integer.parseInt(JOptionPane.showInputDialog(null, message));
				
					p = new Produit(lenumero,lelibelle,lepu,laquantite);
					
					break;
				}
				
				case 3:
				{
					p.SupprimerProduit();
					break;
				}
				
				case 4:
				{
					p.SortieStock();
					break;
				}
				
				case 5:
				{
					p.AfficherStock();
					break;
				}
				
				case 6:
				{
					p.AfficherNumProduit();
					break;
				}
				
				case 7:
				{
					System.out.println("\nVous avez quitte le programme");
				}
			}
		}
	}
}



Merci pour votre aide.
A voir également:

1 réponse

asevere Messages postés 13084 Date d'inscription lundi 28 janvier 2002 Statut Webmaster Dernière intervention 23 novembre 2024 426
29 nov. 2007 à 17:19
Bonjour,

A prioris, ça vient de la construction de ta boucle principale:
public static void main(String[] args) 
	{
		int choix = -1;
		Produit p = null;
		Depot d = null;
		
=>>     do
		{

Pour que cela fonctionne il faudrait que la fin ressemble à ça:
                                case 7:
                                {
                                        System.out.println("\nVous avez quitte le programme");
                                }
                        }
                } while (condition);
        }
}

Cordialement
0