Dowiedz się, jak używać ArrayList w tej prostej, praktycznej aplikacji.

System parkingowy to wygodna, bezpieczna i zrównoważona środowiskowo metoda, która rozwiązuje znaczną część problemu związanego z zarządzaniem ruchem. Dobrze zaprojektowany system parkingowy może zmniejszyć przepływ ruchu, efektywnie wykorzystać przestrzeń, generować przychody i zapewnić lepszą obsługę użytkowników.

Dowiedz się, jak za pomocą języka Java zbudować prosty system parkingowy, który można później zaprojektować i zintegrować z bazą danych, dodać walidacje i opracować graficzny interfejs użytkownika do użytku w prawdziwym życiu.

Jak zbudować system parkingowy przy użyciu języka Java

Możesz znaleźć kod źródłowy do budowy systemu parkowania pojazdów za pomocą Java w tym Repozytorium GitHub.

W tym projekcie użyjesz tablicy ArrayList, która jest tablicą ogólnego przeznaczenia o zmiennym rozmiarze. Możesz uzyskiwać dostęp do elementów za pomocą indeksu, wykonywać operacje CRUD i nie tylko. Aby użyć ArrayList, musisz zaimportować klasę ArrayList ze standardowej biblioteki Java. Podobnie za

instagram viewer
operacji wejścia-wyjścia, zaimportuj klasę Scanner. Zdefiniuj klasę publiczną, System parkowania pojazdu, aby służyć jako klasa główna.

Zdefiniuj trzy zmienne statyczne: razemSloty, dostępne gniazda, I zaparkowaneSamochody. totalSlots reprezentuje całkowitą liczbę miejsc parkingowych, podczas gdy availableSlots śledzi, ile pozostało wolnych. parkedCars to ArrayList, która przechowuje numery tablic rejestracyjnych aktualnie zaparkowanych samochodów.

Zdefiniuj główny() metodę i utworzyć obiekt klasy Scanner. Poproś użytkownika o wprowadzenie całkowitej liczby miejsc parkingowych i zapisanie jej w totalSlots. Początkowo dostępne gniazda są równe całkowitej liczbie gniazd, więc zainicjuj availableSlots na tę samą wartość, co totalSlots.

import java.util. lista tablic;
import java.util. Skaner;

publicznyklasaSystem parkowania pojazdu{

statycznyint totalSlots, availableSlots;
statyczny lista tablic zaparkowane samochody = nowy lista tablic();

publicznystatycznypróżniagłówny(String[] argumenty){

Skaner sc = nowy Skaner (System.in);
System.out.println("Wpisz łączną ilość miejsc parkingowych w obiekcie:");
totalSlots = sc.nextInt();
dostępne gniazda = całkowita liczba miejsc;

Użyj pętli while który działa w nieskończoność. Zapytaj użytkownika, czy chce zaparkować samochód, usunąć go, wyświetlić zaparkowane samochody lub wyjść z programu. W zależności od wyboru wywołaj odpowiednią metodę. Jeśli użytkownik chce zakończyć program, użyj Wyjście z systemu (0) natychmiast zakończyć.

chwila (PRAWDA) {
System.out.println("\n Co chciałbyś zrobić?");
System.out.println("1. Zaparkować samochód");
System.out.println("2. Usuń samochód”);
System.out.println("3. Zobacz zaparkowane samochody");
System.out.println("4. Wyjście");
int wybór = sc.nextInt();

przełącznik (wybór) {
sprawa1:
ParkSamochód();
przerwa;
sprawa2:
usuńSamochód();
przerwa;
sprawa3:
wyświetl zaparkowane samochody();
przerwa;
sprawa4:
system.wyjście(0);
domyślny:
System.out.println(„Nieprawidłowy wybór. Proszę spróbuj ponownie.");
}
}
}

Zdefiniuj publiczną metodę statyczną, ParkSamochód(), bez zwracanego typu. Jeśli nie ma wolnych miejsc, poinformuj o tym użytkownika i wróć. W przeciwnym razie poproś użytkownika o wprowadzenie numeru rejestracyjnego swojego samochodu i skorzystaj z dodać() metodę, aby wstawić ją do ArrayList. Zmniejsz liczbę dostępnych miejsc o jeden i wyświetl, że program zaparkował samochód wraz z aktualną liczbą dostępnych miejsc.

publicznystatycznypróżniaparkSamochód(){
Jeśli (dostępne miejsca == 0) {
System.out.println("Przepraszamy, nie ma wolnych miejsc parkingowych.");
powrót;
}

Skaner sc = nowy Skaner (System.in);
System.out.println(„Wprowadź numer rejestracyjny samochodu:”);
Ciąg tablicalicencyjna = sc.nextLine();
parkedCars.add (tablica rejestracyjna);
dostępne gniazda--;
System.out.println("Samochód został pomyślnie zaparkowany. Aktualnie dostępne sloty to: " + dostępne gniazda);
}

Zdefiniuj metodę, usuńSamochód(). Jeśli wartości dostępnej i całkowitej liczby miejsc są zgodne, wyświetl, że nie ma zaparkowanych samochodów i wróć. W przeciwnym razie poproś użytkownika o numer rejestracyjny jego samochodu. Sprawdź, czy numer tablicy rejestracyjnej wprowadzony przez użytkownika jest obecny w ArrayList za pomocą zawiera().

Jeśli się powiedzie, użyj usunąć() metoda, aby wyjąć ją z ArrayList i zwiększyć dostępne gniazda o jeden. Wyświetl komunikat, że program usunął samochód wraz z aktualną liczbą wolnych miejsc. W przypadku, gdy nie znajdziesz numeru rejestracyjnego, wyświetl informację, że na terenie obiektu nie ma zaparkowanego takiego samochodu.

publicznystatycznypróżniausuńSamochód(){
Jeśli (availableSlots == totalSlots) {
System.out.println(„Nie ma zaparkowanych samochodów”.);
powrót;
}

Skaner sc = nowy Skaner (System.in);
System.out.println(„Wprowadź numer rejestracyjny samochodu do usunięcia:”);
Ciąg tablicalicencyjna = sc.nextLine();

Jeśli (parkedCars.contains (tablica rejestracyjna)) {
parkedCars.remove (tablica rejestracyjna);
dostępneSloty++;
System.out.println(„Samochód usunięty pomyślnie. Aktualnie dostępne sloty to: " + dostępne gniazda);
} w przeciwnym razie {
System.out.println(„Samochód nie jest tu zaparkowany”.);
}
}

Zdefiniuj metodę, wyświetl zaparkowane samochody(). Podobnie jak powyżej sprawdź, czy nie ma zaparkowanych samochodów. W przeciwnym razie wyświetl numery rejestracyjne zaparkowanych samochodów. Aby to zrobić, użyj pętli for-each, aby przeglądać elementy w tablicy ArrayList i wyświetlać je jeden po drugim.

publicznystatycznypróżniawyświetl zaparkowane samochody(){
Jeśli (availableSlots == totalSlots) {
System.out.println(„Nie ma zaparkowanych samochodów”.);
powrót;
}

System.out.println(„Zaparkowane samochody:”);

Do (Ciąg tablicy rejestracyjnej: zaparkowane samochody) {
System.out.println (tabliczka rejestracyjna);
}
}
}

Złóż to wszystko razem, a Twój system parkingowy jest gotowy do użycia.

Przykładowe dane wyjściowe z programu Parking

Po uruchomieniu powyższego kodu program prosi o podanie całkowitej liczby miejsc parkingowych obiektu. Po wprowadzeniu 5 daje możliwość zaparkowania samochodu, usunięcia go, przejrzenia wszystkich zaparkowanych samochodów i wyjścia z programu. Po wybraniu opcji 1 prosi o podanie numeru rejestracyjnego samochodu i zmniejsza dostępne miejsce parkując je.

Wybierając opcję 3, możesz zobaczyć numer rejestracyjny samochodu, który właśnie zaparkowałeś. Po wybraniu opcji 2 i wpisaniu numeru rejestracyjnego program usuwa samochód, a dostępne miejsca zwiększają się o jeden.

Inne systemy zarządzania, które możesz zbudować

Budując systemy zarządzania w języku Java, zdobywasz wiedzę specjalistyczną w różnych aspektach tworzenia oprogramowania, zarządzania bazami danych, bezpieczeństwa i integracji systemów. Niektóre z projektów, które możesz zbadać, to system zarządzania zapasami, który pomaga zrozumieć modelowanie danych, operacje CRUD, śledzenie zapasów i realizację zamówień.

Możesz zbudować system zarządzania biblioteką, aby nauczyć się organizacji danych i uwierzytelniania użytkowników. Systemy zarządzania pracownikami lub uczniami są bardzo podobne i mogą pomóc w nauce kontroli dostępu opartej na rolach i śledzenia obecności.