Perfezionamento controllo duplicati
This commit is contained in:
parent
25a29efc2b
commit
59e7e1f256
@ -36,10 +36,18 @@ public class Garage {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private boolean TrovaDuplicati(Auto p_auto) {
|
private boolean TrovaDuplicati(Auto p_auto) {
|
||||||
boolean ritorno = false;
|
boolean ritorno = false, vuoto = true;
|
||||||
for (int i = 0; i < this.veicoli.length && !ritorno; i++) {
|
|
||||||
if (this.veicoli[i].GetTarga().equals(p_auto.GetTarga())) {
|
for (int i = 0; i < this.veicoli.length && vuoto; i++) {
|
||||||
ritorno = true;
|
if (this.veicoli[i] != null) {
|
||||||
|
vuoto = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!vuoto) {
|
||||||
|
for (int i = 0; i < this.veicoli.length && !ritorno; i++) {
|
||||||
|
if (this.veicoli[i] != null && this.veicoli[i].GetTarga().equals(p_auto.GetTarga())) {
|
||||||
|
ritorno = true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -51,11 +59,11 @@ public class Garage {
|
|||||||
int posizione = this.NextPosizioneLibera();
|
int posizione = this.NextPosizioneLibera();
|
||||||
|
|
||||||
try {
|
try {
|
||||||
veicoli[posizione] = new Auto();
|
Auto auto = new Auto();
|
||||||
if (this.TrovaDuplicati(veicoli[posizione])) {
|
if (this.TrovaDuplicati(auto)) {
|
||||||
ritorno = "Errore: l'auto con la targa inserita è già parcheggiata nel garage.";
|
ritorno = "Errore: l'auto con la targa inserita è già parcheggiata nel garage.";
|
||||||
}
|
} else {
|
||||||
else {
|
veicoli[posizione] = auto;
|
||||||
ritorno = "L'auto è posteggiata nella posizione %d.".formatted(posizione);
|
ritorno = "L'auto è posteggiata nella posizione %d.".formatted(posizione);
|
||||||
}
|
}
|
||||||
} catch (ArrayIndexOutOfBoundsException e) {
|
} catch (ArrayIndexOutOfBoundsException e) {
|
||||||
@ -90,7 +98,7 @@ public class Garage {
|
|||||||
* p_selettore = false -> posti liberi
|
* p_selettore = false -> posti liberi
|
||||||
*/
|
*/
|
||||||
|
|
||||||
String ritorno;
|
String ritorno;
|
||||||
boolean vuoto = true;
|
boolean vuoto = true;
|
||||||
int posti[] = TrovaPosti(p_selettore);
|
int posti[] = TrovaPosti(p_selettore);
|
||||||
|
|
||||||
@ -104,7 +112,7 @@ public class Garage {
|
|||||||
ritorno = "Non c'è nessun posto " + (p_selettore ? "occupato" : "libero") + ".";
|
ritorno = "Non c'è nessun posto " + (p_selettore ? "occupato" : "libero") + ".";
|
||||||
} else {
|
} else {
|
||||||
int i = 0;
|
int i = 0;
|
||||||
ritorno = "I posti " + (p_selettore ? "occupati" : "liberi") + " sono:\n";
|
ritorno = "I posti " + (p_selettore ? "occupati" : "liberi") + " sono:\n";
|
||||||
for (int posizione : posti) {
|
for (int posizione : posti) {
|
||||||
if (posizione != -1) {
|
if (posizione != -1) {
|
||||||
if (p_selettore) {
|
if (p_selettore) {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user