Aggiunto controllo duplicato targa + rimozione condizione inutile
This commit is contained in:
parent
230988e76a
commit
25a29efc2b
@ -35,13 +35,29 @@ public class Garage {
|
||||
return exit ? --i : -1;
|
||||
}
|
||||
|
||||
private boolean TrovaDuplicati(Auto p_auto) {
|
||||
boolean ritorno = false;
|
||||
for (int i = 0; i < this.veicoli.length && !ritorno; i++) {
|
||||
if (this.veicoli[i].GetTarga().equals(p_auto.GetTarga())) {
|
||||
ritorno = true;
|
||||
}
|
||||
}
|
||||
|
||||
return ritorno;
|
||||
}
|
||||
|
||||
public String IngressoAuto() {
|
||||
String ritorno;
|
||||
int posizione = this.NextPosizioneLibera();
|
||||
|
||||
try {
|
||||
veicoli[posizione] = new Auto();
|
||||
ritorno = "L'auto è posteggiata nella posizione %d".formatted(posizione);
|
||||
if (this.TrovaDuplicati(veicoli[posizione])) {
|
||||
ritorno = "Errore: l'auto con la targa inserita è già parcheggiata nel garage.";
|
||||
}
|
||||
else {
|
||||
ritorno = "L'auto è posteggiata nella posizione %d.".formatted(posizione);
|
||||
}
|
||||
} catch (ArrayIndexOutOfBoundsException e) {
|
||||
ritorno = "Errore: il garage è pieno.";
|
||||
} catch (Exception e) {
|
||||
@ -93,7 +109,7 @@ public class Garage {
|
||||
if (posizione != -1) {
|
||||
if (p_selettore) {
|
||||
ritorno += "- il numero " + posizione
|
||||
+ (p_selettore ? (" da un'auto con targa: " + this.veicoli[posizione].GetTarga()) : "")
|
||||
+ " da un'auto con targa: " + this.veicoli[posizione].GetTarga()
|
||||
+ "\n";
|
||||
} else {
|
||||
i++;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user