-Leo-
09-01-2014, 15:24
Ciao a tutti, sono un principiante di java e sto provando a creare un piccolo programmino a riga di comando.
Vorrei ottenere una specie di menù che faccia le seguenti cose:
scegli tra le seguenti opzioni
1 - opzione 1
2 - opzione 2
3 - opzione 3
: QUA DIGITO UNA DELLE OPZIONI TIPO 2
opzione 2 selezionata
ecc...
per farlo ho realizzato il seguente codice
import java.util.Scanner;
public class prova{
public static void main(String[] args) {
System.out.println ("Scegli tra le seguenti opzioni:");
System.out.println ("1 - opzione 1");
System.out.println ("2 - opzione 2");
System.out.println ("3 - opzione 3");
System.out.print(": ");
Scanner inputopzione = new Scanner(System.in);
if (inputopzione.nextInt() == 1 ) {
System.out.println ("opzione 1");
} else if (inputopzione.nextInt() == 2 ) {
System.out.println ("opzione 2");
} else if (inputopzione.nextInt() == 3){
System.out.println ("opzione 3");
} else {
System.out.println ("errore");
}
}
}
e tutto funziona come vorrei... solo che accade una cosa strana: se digito 1 per la prima opzione mi dà subito il contenuto del suo if ma per ottenere il contenuto di una qualsiasi opzione successiva devo digitarla più volte (ad esempio per entrare nella opzione 2 devo digitare "2 [premo invio] 2 [premo invio]" e non "2 [premo invio]" come accade SOLO per la prima opzione) come mai?
grazie dell'attenzione :)
Vorrei ottenere una specie di menù che faccia le seguenti cose:
scegli tra le seguenti opzioni
1 - opzione 1
2 - opzione 2
3 - opzione 3
: QUA DIGITO UNA DELLE OPZIONI TIPO 2
opzione 2 selezionata
ecc...
per farlo ho realizzato il seguente codice
import java.util.Scanner;
public class prova{
public static void main(String[] args) {
System.out.println ("Scegli tra le seguenti opzioni:");
System.out.println ("1 - opzione 1");
System.out.println ("2 - opzione 2");
System.out.println ("3 - opzione 3");
System.out.print(": ");
Scanner inputopzione = new Scanner(System.in);
if (inputopzione.nextInt() == 1 ) {
System.out.println ("opzione 1");
} else if (inputopzione.nextInt() == 2 ) {
System.out.println ("opzione 2");
} else if (inputopzione.nextInt() == 3){
System.out.println ("opzione 3");
} else {
System.out.println ("errore");
}
}
}
e tutto funziona come vorrei... solo che accade una cosa strana: se digito 1 per la prima opzione mi dà subito il contenuto del suo if ma per ottenere il contenuto di una qualsiasi opzione successiva devo digitarla più volte (ad esempio per entrare nella opzione 2 devo digitare "2 [premo invio] 2 [premo invio]" e non "2 [premo invio]" come accade SOLO per la prima opzione) come mai?
grazie dell'attenzione :)