diff --git a/src/eserciziogarage/Garage.java b/src/eserciziogarage/Garage.java index 73d758c..f4f142d 100644 --- a/src/eserciziogarage/Garage.java +++ b/src/eserciziogarage/Garage.java @@ -13,8 +13,6 @@ import java.util.Scanner; public class Garage { Auto[] veicoli; - private int posizioneLibera = 0; - public Garage(int p_dimensione) { this.veicoli = new Auto[p_dimensione]; } @@ -26,12 +24,6 @@ public class Garage { return i; } - private int NextPosizioneLibera(int p_i) { - for (; p_i < this.veicoli.length && this.veicoli[p_i] != null; ++p_i) - ; - return p_i; - } - private int TrovaTarga(String p_targa) { boolean exit = false; int i = 0; @@ -76,10 +68,15 @@ public class Garage { return ritorno; } - public String GetPostiOccupati() { - String ritorno; + private String GetPosti(boolean p_selettore) { + /* + * p_selettore = true -> posti occupati + * p_selettore = false -> posti liberi + */ + + String ritorno; boolean vuoto = true; - int posti[] = TrovaPosti(true); + int posti[] = TrovaPosti(p_selettore); for (int i = 0; i < posti.length && vuoto; i++) { if (posti[i] != -1) { @@ -88,9 +85,9 @@ public class Garage { } if (vuoto) { - ritorno = "Non c'è nessun posto occupato."; + ritorno = "Non c'è nessun posto " + (p_selettore ? "occupato" : "libero") + "."; } else { - ritorno = "I posti occupati sono:\n"; + ritorno = "I posti " + (p_selettore ? "occupati" : "liberi") + " sono:\n"; for (int posizione : posti) { if (posizione != -1) { ritorno += posizione + "\n"; @@ -100,28 +97,12 @@ public class Garage { return ritorno; } + public String GetPostiOccupati() { + return GetPosti(true); + } + public String GetPostiLiberi() { - String ritorno; - boolean vuoto = true; - int posti[] = TrovaPosti(false); - - for (int i = 0; i < posti.length && vuoto; i++) { - if (posti[i] != -1) { - vuoto = false; - } - } - - if (vuoto) { - ritorno = "Non c'è nessun posto libero."; - } else { - ritorno = "I posti liberi sono:\n"; - for (int posizione : posti) { - if (posizione != -1) { - ritorno += posizione + "\n"; - } - } - } - return ritorno; + return GetPosti(false); } public String UscitaAuto() { @@ -150,7 +131,6 @@ public class Garage { ritorno = "Errore: targa non trovata. Riprovare."; } } - return ritorno; } }