IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Java Discussion :

Faire un menu à deux niveaux en mode texte


Sujet :

Langage Java

  1. #1
    Membre expérimenté Avatar de julien.63
    Profil pro
    balayeur
    Inscrit en
    Décembre 2005
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : balayeur

    Informations forums :
    Inscription : Décembre 2005
    Messages : 1 348
    Points : 1 311
    Points
    1 311
    Par défaut Faire un menu à deux niveaux en mode texte
    salut,
    j'essaie de faire un menu à deux niveaux en mode console.
    C'est a dire que l'utilisateur choisit une première option, puis une sous option.

    Mon problème c'est que c'est tantôt un char (pour un switch) tantôt une String...
    et c'est ca qui me pose problème !

    Voici un extrait de mon code
    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
     
    /**
    *recupere les entrees clavier
    */
    	private static String getSaisie(){
    		BufferedReader entreeClavier = new BufferedReader(new InputStreamReader(System.in));
    		String saisie = null;
    		while(saisie == null){
    			saisie = entreeClavier.readLine();
    		}
    		return saisie;
    	}	
     
    	/**
             * @param args
             */
    	public static void main(String[] args) {
     
    		BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
     
    		try{
    			afficheMenu();
     
    			while (true){
    				String saisie = getSaisie().substring(1,1);
    				//char saisie = (char)getSaisie().substring(1,1); CAST IMPOSSIBLE
     
    			    switch (saisie) { // PROBLEM IMPOSSIBLE DE FAIRE UN SWITCH SUR UNE STRING
    				    case 'C':
    				    	String montant = getSaisie();
    				    	obj.creer("0001", montant);
    						break;
     
     
    					case 'D':
    						String montant = getSaisie();
    						obj.ajouter("0001", montant);
    						break;
     
    					case 'Q':
    						exitProgram("Merci. Au revoir !");
    						break;
     
    					default:
    						afficheMenu();
    						break;
    			    }
    		}
    }
    Merci d'avance pour vos conseils

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 73
    Points : 75
    Points
    75
    Par défaut
    Bonsoir Julien,

    Pourquoi n'utilises-tu pas la méthode toCharArray() pour avoir le char qui t'intéresse, ou même celle-ci Saisie.charAt(0) ?

    A+

  3. #3
    Rédacteur
    Avatar de CyberChouan
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    2 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 752
    Points : 4 314
    Points
    4 314
    Par défaut
    Et pourquoi veux-tu absolument travailler avec le type "char". Pour les chaînes de caractères, tu peux "émuler" le fonctionnement d'un switch sur les chaînes comme cela (avec une syntaxe qui n'est pas beaucoup plus lourde):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    String choix;
    if("A".equals(choix)) {
       executerChoixA();
    } else if ("B".equals(choix)) {
       executerChoixB();
    } else if ("C".equals(choix)) {
       executeChoixC();
    } else {
       // Default
       executeDefault();
    }

  4. #4
    Membre expérimenté Avatar de julien.63
    Profil pro
    balayeur
    Inscrit en
    Décembre 2005
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : balayeur

    Informations forums :
    Inscription : Décembre 2005
    Messages : 1 348
    Points : 1 311
    Points
    1 311
    Par défaut
    Merci pour vos réponses.
    je suis parti sur un qui fonctionne nickel.
    je débute en java et je ne connais pas toutes les méthodes de String entre autres.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 06/09/2011, 10h54
  2. Menu à deux niveaux
    Par lanfeust129 dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 08/05/2011, 17h24
  3. Réponses: 2
    Dernier message: 24/03/2011, 11h39
  4. [Ergonomie] Menu à deux niveaux
    Par eXiaNazaire dans le forum Webdesign & Ergonomie
    Réponses: 2
    Dernier message: 03/10/2008, 17h37
  5. Menu en mode texte
    Par piotrr dans le forum API standards et tierces
    Réponses: 1
    Dernier message: 12/03/2008, 08h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo