Compare commits
4 Commits
2bc67fde25
...
262f581394
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
262f581394 | ||
|
|
cda2a97d02 | ||
|
|
9f495c908f | ||
|
|
6d8c8fb7bb |
@ -14,21 +14,25 @@ public class Garage {
|
||||
public static final int DIMENSIONE_GARAGE = 15;
|
||||
VeicoloAMotore[] veicoli = new VeicoloAMotore[DIMENSIONE_GARAGE];
|
||||
|
||||
public int immettiNuovoVeicolo(VeicoloAMotore v) {
|
||||
public int immettiNuovoVeicolo(VeicoloAMotore v) throws ArrayIndexOutOfBoundsException {
|
||||
int ritorno = trovaPosizioneLibera();
|
||||
veicoli[ritorno] = v;
|
||||
return ritorno;
|
||||
}
|
||||
|
||||
|
||||
public VeicoloAMotore estraiVeicolo(int posto) {
|
||||
VeicoloAMotore ritorno = this.veicoli[posto];
|
||||
this.veicoli[posto] = null;
|
||||
return ritorno;
|
||||
}
|
||||
|
||||
|
||||
public void stampaSituazionePosti() {
|
||||
for (VeicoloAMotore veicoloAMotore : veicoli) {
|
||||
System.out.println(veicoloAMotore.toString());
|
||||
for (int i = 0; i < this.veicoli.length; i++) {
|
||||
if (this.veicoli[i] != null) {
|
||||
System.out.println("Posizione " + i + ":\n" + this.veicoli[i].toString());
|
||||
} else {
|
||||
System.out.println("La posizione " + i + " è vuota.");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -87,6 +87,7 @@ public class MainGarage {
|
||||
Date now = new Date();
|
||||
String scelta;
|
||||
VeicoloAMotore veicolo = null;
|
||||
int posizioneOccupata;
|
||||
|
||||
System.out.print("Inserisci la marca: ");
|
||||
marca = sc.nextLine().trim();
|
||||
@ -101,8 +102,9 @@ public class MainGarage {
|
||||
System.out.println("Errore: il veicolo non può esser stato immatricolato nel futuro.");
|
||||
pausa();
|
||||
error = true;
|
||||
} else {
|
||||
annoImmatricolazione = Integer.parseInt(sdf.format(annoImmatricolazioneDate));
|
||||
}
|
||||
annoImmatricolazione = Integer.parseInt(annoImmatricolazioneDate.toString());
|
||||
} catch (ParseException _) {
|
||||
System.out.println("Errore nella lettura della data.");
|
||||
pausa();
|
||||
@ -112,13 +114,13 @@ public class MainGarage {
|
||||
|
||||
System.out.print("Inserisci il tipo di alimentazione: ");
|
||||
tipoAlimentazione = sc.nextLine().trim();
|
||||
// TODO: controlli sull'alimentazione (niente veicoli alimentati a scoregge)
|
||||
|
||||
do {
|
||||
error = false;
|
||||
try {
|
||||
System.out.print("Inserire la cilindrata: ");
|
||||
cilindrata = sc.nextInt();
|
||||
sc.nextLine();
|
||||
|
||||
if (cilindrata <= 0) {
|
||||
System.out.println("Errore: la cilindrata deve essere un numero positivo.");
|
||||
@ -133,7 +135,6 @@ public class MainGarage {
|
||||
} while (error);
|
||||
|
||||
do {
|
||||
error = false;
|
||||
System.out.println("Opzioni possibili:");
|
||||
System.out.println("Furgone");
|
||||
System.out.println("Automobile");
|
||||
@ -224,8 +225,12 @@ public class MainGarage {
|
||||
}
|
||||
} while (error);
|
||||
|
||||
garage.immettiNuovoVeicolo(veicolo);
|
||||
System.out.println("Veicolo inserito con successo.");
|
||||
try {
|
||||
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() {
|
||||
@ -235,32 +240,28 @@ public class MainGarage {
|
||||
|
||||
do {
|
||||
error = false;
|
||||
try {
|
||||
System.out.print("Inserire la posizione: ");
|
||||
posizione = sc.nextInt();
|
||||
|
||||
do {
|
||||
try {
|
||||
System.out.print("Inserire la posizione: ");
|
||||
posizione = sc.nextInt();
|
||||
|
||||
if (posizione <= 0 || posizione >= Garage.DIMENSIONE_GARAGE) {
|
||||
System.out.println("Errore: la posizione non esiste.");
|
||||
pausa();
|
||||
error = true;
|
||||
}
|
||||
} catch (InputMismatchException _) {
|
||||
System.out.println("Errore nella lettura della posizione.");
|
||||
if (posizione < 0 || posizione >= Garage.DIMENSIONE_GARAGE) {
|
||||
System.out.println("Errore: la posizione non esiste.");
|
||||
pausa();
|
||||
error = true;
|
||||
}
|
||||
} while (error);
|
||||
|
||||
veicoloEstratto = garage.estraiVeicolo(posizione);
|
||||
if (veicoloEstratto != null) {
|
||||
System.out.println(veicoloEstratto.toString());
|
||||
} else {
|
||||
System.out.println("Errore: la posizione indicata è vuota.");
|
||||
} catch (InputMismatchException _) {
|
||||
System.out.println("Errore nella lettura della posizione.");
|
||||
pausa();
|
||||
error = true;
|
||||
}
|
||||
} while (error);
|
||||
|
||||
veicoloEstratto = garage.estraiVeicolo(posizione);
|
||||
if (veicoloEstratto != null) {
|
||||
System.out.println("Veicolo estratto:");
|
||||
System.out.println(veicoloEstratto.toString());
|
||||
} else {
|
||||
System.out.println("Errore: la posizione indicata è vuota.");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user