Miglioria inserimento ed estrazione veicolo
This commit is contained in:
@@ -11,10 +11,10 @@ import veicoli.VeicoloAMotore;
|
|||||||
* @author Verde
|
* @author Verde
|
||||||
*/
|
*/
|
||||||
public class Garage {
|
public class Garage {
|
||||||
public static final int DIMENSIONE_GARAGE = 15;
|
public static final int DIMENSIONE_GARAGE = 2;
|
||||||
VeicoloAMotore[] veicoli = new VeicoloAMotore[DIMENSIONE_GARAGE];
|
VeicoloAMotore[] veicoli = new VeicoloAMotore[DIMENSIONE_GARAGE];
|
||||||
|
|
||||||
public int immettiNuovoVeicolo(VeicoloAMotore v) {
|
public int immettiNuovoVeicolo(VeicoloAMotore v) throws ArrayIndexOutOfBoundsException {
|
||||||
int ritorno = trovaPosizioneLibera();
|
int ritorno = trovaPosizioneLibera();
|
||||||
veicoli[ritorno] = v;
|
veicoli[ritorno] = v;
|
||||||
return ritorno;
|
return ritorno;
|
||||||
|
|||||||
@@ -83,10 +83,13 @@ public class MainGarage {
|
|||||||
|
|
||||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy");
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy");
|
||||||
Date annoImmatricolazioneDate;
|
Date annoImmatricolazioneDate;
|
||||||
|
String[] data;
|
||||||
|
String anno;
|
||||||
boolean error;
|
boolean error;
|
||||||
Date now = new Date();
|
Date now = new Date();
|
||||||
String scelta;
|
String scelta;
|
||||||
VeicoloAMotore veicolo = null;
|
VeicoloAMotore veicolo = null;
|
||||||
|
int posizioneOccupata;
|
||||||
|
|
||||||
System.out.print("Inserisci la marca: ");
|
System.out.print("Inserisci la marca: ");
|
||||||
marca = sc.nextLine().trim();
|
marca = sc.nextLine().trim();
|
||||||
@@ -101,8 +104,11 @@ public class MainGarage {
|
|||||||
System.out.println("Errore: il veicolo non può esser stato immatricolato nel futuro.");
|
System.out.println("Errore: il veicolo non può esser stato immatricolato nel futuro.");
|
||||||
pausa();
|
pausa();
|
||||||
error = true;
|
error = true;
|
||||||
|
} else {
|
||||||
|
data = annoImmatricolazioneDate.toString().split("\\s");
|
||||||
|
anno = data[data.length - 1];
|
||||||
|
annoImmatricolazione = Integer.parseInt(anno);
|
||||||
}
|
}
|
||||||
annoImmatricolazione = Integer.parseInt(annoImmatricolazioneDate.toString());
|
|
||||||
} catch (ParseException _) {
|
} catch (ParseException _) {
|
||||||
System.out.println("Errore nella lettura della data.");
|
System.out.println("Errore nella lettura della data.");
|
||||||
pausa();
|
pausa();
|
||||||
@@ -112,13 +118,13 @@ public class MainGarage {
|
|||||||
|
|
||||||
System.out.print("Inserisci il tipo di alimentazione: ");
|
System.out.print("Inserisci il tipo di alimentazione: ");
|
||||||
tipoAlimentazione = sc.nextLine().trim();
|
tipoAlimentazione = sc.nextLine().trim();
|
||||||
// TODO: controlli sull'alimentazione (niente veicoli alimentati a scoregge)
|
|
||||||
|
|
||||||
do {
|
do {
|
||||||
error = false;
|
error = false;
|
||||||
try {
|
try {
|
||||||
System.out.print("Inserire la cilindrata: ");
|
System.out.print("Inserire la cilindrata: ");
|
||||||
cilindrata = sc.nextInt();
|
cilindrata = sc.nextInt();
|
||||||
|
sc.nextLine();
|
||||||
|
|
||||||
if (cilindrata <= 0) {
|
if (cilindrata <= 0) {
|
||||||
System.out.println("Errore: la cilindrata deve essere un numero positivo.");
|
System.out.println("Errore: la cilindrata deve essere un numero positivo.");
|
||||||
@@ -133,7 +139,6 @@ public class MainGarage {
|
|||||||
} while (error);
|
} while (error);
|
||||||
|
|
||||||
do {
|
do {
|
||||||
error = false;
|
|
||||||
System.out.println("Opzioni possibili:");
|
System.out.println("Opzioni possibili:");
|
||||||
System.out.println("Furgone");
|
System.out.println("Furgone");
|
||||||
System.out.println("Automobile");
|
System.out.println("Automobile");
|
||||||
@@ -224,8 +229,12 @@ public class MainGarage {
|
|||||||
}
|
}
|
||||||
} while (error);
|
} while (error);
|
||||||
|
|
||||||
garage.immettiNuovoVeicolo(veicolo);
|
try {
|
||||||
System.out.println("Veicolo inserito con successo.");
|
posizioneOccupata = garage.immettiNuovoVeicolo(veicolo);
|
||||||
|
System.out.println("Veicolo inserito con successo alla posizione " + posizioneOccupata + ".");
|
||||||
|
} catch (ArrayIndexOutOfBoundsException _) {
|
||||||
|
System.out.println("Errore: non ci sono posti disponibili, riprovare.");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void estraiVeicolo() {
|
static void estraiVeicolo() {
|
||||||
@@ -233,14 +242,13 @@ public class MainGarage {
|
|||||||
int posizione = 0;
|
int posizione = 0;
|
||||||
VeicoloAMotore veicoloEstratto = null;
|
VeicoloAMotore veicoloEstratto = null;
|
||||||
|
|
||||||
error = false;
|
|
||||||
|
|
||||||
do {
|
do {
|
||||||
|
error = false;
|
||||||
try {
|
try {
|
||||||
System.out.print("Inserire la posizione: ");
|
System.out.print("Inserire la posizione: ");
|
||||||
posizione = sc.nextInt();
|
posizione = sc.nextInt();
|
||||||
|
|
||||||
if (posizione <= 0 || posizione >= Garage.DIMENSIONE_GARAGE) {
|
if (posizione < 0 || posizione >= Garage.DIMENSIONE_GARAGE) {
|
||||||
System.out.println("Errore: la posizione non esiste.");
|
System.out.println("Errore: la posizione non esiste.");
|
||||||
pausa();
|
pausa();
|
||||||
error = true;
|
error = true;
|
||||||
|
|||||||
Reference in New Issue
Block a user