Migliorie UX
This commit is contained in:
parent
9cad5b1af9
commit
50bc6235ad
@ -23,6 +23,7 @@ public class MainGarage {
|
||||
|
||||
static Scanner sc = new Scanner(System.in);
|
||||
static Garage garage = new Garage();
|
||||
static final String ERRORE_OPZIONE = "Opzione non valida.";
|
||||
|
||||
public static void main() {
|
||||
int scelta = -1;
|
||||
@ -55,7 +56,7 @@ public class MainGarage {
|
||||
pausa();
|
||||
break;
|
||||
default:
|
||||
System.out.println("Opzione non valida.");
|
||||
System.out.println(ERRORE_OPZIONE);
|
||||
pausa();
|
||||
break;
|
||||
}
|
||||
@ -82,7 +83,7 @@ public class MainGarage {
|
||||
int numTempiMotore = 0;
|
||||
|
||||
boolean error = false;
|
||||
String scelta;
|
||||
int scelta;
|
||||
VeicoloAMotore veicolo = null;
|
||||
int posizioneOccupata;
|
||||
|
||||
@ -97,35 +98,45 @@ public class MainGarage {
|
||||
cilindrata = cilindrata();
|
||||
|
||||
do {
|
||||
System.out.println("Opzioni possibili:");
|
||||
System.out.println("Furgone");
|
||||
System.out.println("Automobile");
|
||||
System.out.println("Motocicletta");
|
||||
System.out.print("Inserire la tipologia di veicolo: ");
|
||||
scelta = sc.nextLine().trim().toLowerCase();
|
||||
try {
|
||||
error = false;
|
||||
System.out.println("Opzioni possibili:");
|
||||
System.out.println("1. Furgone");
|
||||
System.out.println("2. Automobile");
|
||||
System.out.println("3. Motocicletta");
|
||||
System.out.print("Inserire la tipologia di veicolo tra le opzioni sopra: ");
|
||||
scelta = sc.nextInt();
|
||||
sc.nextLine();
|
||||
|
||||
switch (scelta) {
|
||||
case "furgone":
|
||||
capacitaCarico = capacitaCarico();
|
||||
veicolo = new Furgone(annoImmatricolazione, marca, tipoAlimentazione, cilindrata, capacitaCarico);
|
||||
break;
|
||||
case "automobile":
|
||||
numPorte = numPorte();
|
||||
veicolo = new Automobile(annoImmatricolazione, marca, tipoAlimentazione, cilindrata, numPorte);
|
||||
break;
|
||||
case "motocicletta":
|
||||
System.out.print("Inserire la tipologia della motocicletta: ");
|
||||
tipologia = sc.nextLine();
|
||||
switch (scelta) {
|
||||
case 1:
|
||||
capacitaCarico = capacitaCarico();
|
||||
veicolo = new Furgone(annoImmatricolazione, marca, tipoAlimentazione, cilindrata,
|
||||
capacitaCarico);
|
||||
break;
|
||||
case 2:
|
||||
numPorte = numPorte();
|
||||
veicolo = new Automobile(annoImmatricolazione, marca, tipoAlimentazione, cilindrata, numPorte);
|
||||
break;
|
||||
case 3:
|
||||
System.out.print("Inserire la tipologia della motocicletta: ");
|
||||
tipologia = sc.nextLine();
|
||||
|
||||
numTempiMotore = numTempiMotore();
|
||||
veicolo = new Motocicletta(annoImmatricolazione, marca, tipoAlimentazione, cilindrata, tipologia,
|
||||
numTempiMotore);
|
||||
break;
|
||||
default:
|
||||
System.out.println("Opzione non valida.");
|
||||
pausa();
|
||||
error = true;
|
||||
break;
|
||||
numTempiMotore = numTempiMotore();
|
||||
veicolo = new Motocicletta(annoImmatricolazione, marca, tipoAlimentazione, cilindrata,
|
||||
tipologia,
|
||||
numTempiMotore);
|
||||
break;
|
||||
default:
|
||||
System.out.println(ERRORE_OPZIONE);
|
||||
pausa();
|
||||
error = true;
|
||||
break;
|
||||
}
|
||||
} catch (InputMismatchException _) {
|
||||
System.out.println(ERRORE_OPZIONE);
|
||||
pausa();
|
||||
error = true;
|
||||
}
|
||||
} while (error);
|
||||
|
||||
@ -142,6 +153,13 @@ public class MainGarage {
|
||||
Date annoImmatricolazioneDate;
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy");
|
||||
Date now = new Date();
|
||||
String annoIniziale = "1900";
|
||||
Date dataIniziale = null;
|
||||
try {
|
||||
dataIniziale = sdf.parse(annoIniziale);
|
||||
} catch (ParseException _) {
|
||||
System.out.println("Errore non previsto nell'inizializzazione della data.");
|
||||
}
|
||||
int ritorno = 0;
|
||||
|
||||
do {
|
||||
@ -154,6 +172,11 @@ public class MainGarage {
|
||||
System.out.println("Errore: il veicolo non può esser stato immatricolato nel futuro.");
|
||||
pausa();
|
||||
error = true;
|
||||
} else if (annoImmatricolazioneDate.before(dataIniziale)) {
|
||||
System.out.println(
|
||||
"Errore: il veicolo non può esser stato immatricolato prima del " + annoIniziale + ".");
|
||||
pausa();
|
||||
error = true;
|
||||
} else {
|
||||
ritorno = Integer.parseInt(sdf.format(annoImmatricolazioneDate));
|
||||
}
|
||||
@ -201,6 +224,7 @@ public class MainGarage {
|
||||
try {
|
||||
System.out.print("Inserire la capacità di carico: ");
|
||||
ritorno = sc.nextInt();
|
||||
sc.nextLine();
|
||||
|
||||
if (ritorno <= 0) {
|
||||
System.out.println("Errore: la capacità di carico deve essere un numero positivo.");
|
||||
@ -225,8 +249,9 @@ public class MainGarage {
|
||||
try {
|
||||
System.out.print("Inserire il numero di porte: ");
|
||||
ritorno = sc.nextInt();
|
||||
sc.nextLine();
|
||||
|
||||
if (ritorno <= 2) {
|
||||
if (ritorno < 2) {
|
||||
System.out.println(
|
||||
"Errore: il numero di porte deve essere un numero positivo e non può essere inferiore a 2.");
|
||||
pausa();
|
||||
@ -245,7 +270,7 @@ public class MainGarage {
|
||||
static int numTempiMotore() {
|
||||
boolean error;
|
||||
int ritorno = 0;
|
||||
|
||||
|
||||
do {
|
||||
error = false;
|
||||
|
||||
@ -253,8 +278,9 @@ public class MainGarage {
|
||||
System.out.println("Opzioni possibili");
|
||||
System.out.println("2");
|
||||
System.out.println("4");
|
||||
System.out.print("Inserisci il numero di tempi del motore: ");
|
||||
System.out.print("Inserisci il numero di tempi del motore tra le opzioni possibili: ");
|
||||
ritorno = sc.nextInt();
|
||||
sc.nextLine();
|
||||
|
||||
switch (ritorno) {
|
||||
case 2, 4:
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user