Compare commits

..

No commits in common. "262f581394a9e3886be18321211fe6718c8d5c80" and "2bc67fde25d11d69c31c4925c7d7a3488062c967" have entirely different histories.

2 changed files with 29 additions and 34 deletions

View File

@ -14,25 +14,21 @@ public class Garage {
public static final int DIMENSIONE_GARAGE = 15;
VeicoloAMotore[] veicoli = new VeicoloAMotore[DIMENSIONE_GARAGE];
public int immettiNuovoVeicolo(VeicoloAMotore v) throws ArrayIndexOutOfBoundsException {
public int immettiNuovoVeicolo(VeicoloAMotore v) {
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 (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.");
}
for (VeicoloAMotore veicoloAMotore : veicoli) {
System.out.println(veicoloAMotore.toString());
}
}

View File

@ -87,7 +87,6 @@ public class MainGarage {
Date now = new Date();
String scelta;
VeicoloAMotore veicolo = null;
int posizioneOccupata;
System.out.print("Inserisci la marca: ");
marca = sc.nextLine().trim();
@ -102,9 +101,8 @@ 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();
@ -114,13 +112,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.");
@ -135,6 +133,7 @@ public class MainGarage {
} while (error);
do {
error = false;
System.out.println("Opzioni possibili:");
System.out.println("Furgone");
System.out.println("Automobile");
@ -225,12 +224,8 @@ public class MainGarage {
}
} while (error);
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.");
}
garage.immettiNuovoVeicolo(veicolo);
System.out.println("Veicolo inserito con successo.");
}
static void estraiVeicolo() {
@ -240,28 +235,32 @@ public class MainGarage {
do {
error = false;
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.");
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.");
pausa();
error = true;
}
} catch (InputMismatchException _) {
System.out.println("Errore nella lettura della posizione.");
} while (error);
veicoloEstratto = garage.estraiVeicolo(posizione);
if (veicoloEstratto != null) {
System.out.println(veicoloEstratto.toString());
} else {
System.out.println("Errore: la posizione indicata è vuota.");
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.");
}
}
}