Научете как да използвате ArrayList за това просто и практично приложение.

Системата за паркиране е удобен, безопасен и екологично устойчив метод, който решава голяма част от проблема с управлението на трафика. Една добре проектирана система за паркиране може да намали потока на трафика, да използва ефективно пространството, да генерира приходи и да даде подобрено потребителско изживяване.

Научете как можете да използвате Java, за да създадете проста система за паркиране, която по-късно можете да проектирате и интегрирате с база данни, да добавите валидации и да разработите графичен потребителски интерфейс, който да използвате в реалния живот.

Как да изградите система за паркиране с помощта на Java

Тук можете да намерите изходния код за изграждане на система за паркиране на превозни средства с помощта на Java GitHub хранилище.

За този проект ще използвате ArrayList, който е масив с общо предназначение, с възможност за промяна на размера. Можете да осъществявате достъп до елементи с помощта на индекс, да извършвате CRUD операции и др.

instagram viewer
За да използвате ArrayList, трябва да импортирате класа ArrayList от стандартната библиотека на Java. По същия начин, за входно-изходни операции, импортирайте класа Scanner. Дефинирайте публичен клас, Система за паркиране на превозни средства, за да служи като основен клас.

Дефинирайте три статични променливи: totalSlots, налични слотове, и паркирани автомобили. totalSlots представлява общия брой места за паркиране, докато availableSlots следи колко остават свободни. parkedCars е ArrayList, който съхранява регистрационните номера на колите, паркирани в момента.

Определете основен () метод и създайте обект от класа Scanner. Помолете потребителя да въведе общия брой места за паркиране и да го съхрани в totalSlots. Първоначално наличните слотове са равни на общия брой слотове, така че инициализирайте availableSlots на същата стойност като totalSlots.

импортиране java.util. ArrayList;
импортиране java.util. Скенер;

публиченкласСистема за паркиране на превозни средства{

статиченвътр totalSlots, availableSlots;
статичен ArrayList паркирани коли = нов ArrayList();

публиченстатиченневалиденосновен(Низ [] аргументи){

Скенер sc = нов Скенер (System.in);
System.out.println(„Въведете общия брой места за паркиране в обекта:“);
totalSlots = sc.nextInt();
налични слотове = общо слотове;

Използвайте цикъл while който работи за неопределено време. Попитайте потребителя дали иска да паркира кола, да я премахне, да види паркирани коли или да излезе от програмата. В зависимост от избора извикайте съответния метод. Ако потребителят иска да прекрати програмата, използвайте System.exit (0) да прекрати незабавно.

докато (вярно) {
System.out.println("\n Какво бихте искали да направите?");
System.out.println("1. Паркирай кола");
System.out.println("2. Премахване на кола");
System.out.println("3. Преглед на паркирани автомобили");
System.out.println("4. изход");
вътр избор = sc.nextInt();

превключвател (избор) {
случай1:
parkCar();
прекъсвам;
случай2:
премахване на колата();
прекъсвам;
случай3:
viewParkedCars();
прекъсвам;
случай4:
System.exit(0);
по подразбиране:
System.out.println(„Невалиден избор. Моля, опитайте отново.");
}
}
}

Дефинирайте публичен статичен метод, паркCar(), без тип връщане. Ако няма свободни слотове, информирайте потребителя и се върнете. В противен случай помолете потребителя да въведе регистрационния номер на колата си и да използва добави () метод, за да го вмъкнете в ArrayList. Намалете броя на наличните слотове с едно и покажете, че програмата е паркирала колата заедно с текущия брой налични слотове.

публиченстатиченневалиденparkCar(){
ако (налични слотове == 0) {
System.out.println(„Съжаляваме, няма свободни места за паркиране.“);
връщане;
}

Скенер sc = нов Скенер (System.in);
System.out.println(„Въведете регистрационния номер на автомобила:“);
String licensePlate = sc.nextLine();
parkedCars.add (licensePlate);
налични слотове--;
System.out.println(„Колата е паркирана успешно. Текущите налични слотове са: " + налични слотове);
}

Определете метод, премахване на колата (). Ако стойностите на наличните и общия брой слотове съвпадат, покажете, че няма паркирани автомобили и се върнете. В противен случай попитайте потребителя за регистрационния номер на колата му. Проверете дали регистрационният номер, въведен от потребителя, присъства в ArrayList, като използвате съдържа().

Ако успеете, използвайте Премахване() метод, за да го извадите от ArrayList и да увеличите наличните слотове с едно. Покажете съобщението, че програмата е премахнала колата, заедно с текущия брой налични слотове. В случай, че не намерите регистрационния номер, покажете, че в обекта няма паркиран такъв автомобил.

публиченстатиченневалиденremoveCar(){
ако (availableSlots == totalSlots) {
System.out.println(„Няма паркирани коли“.);
връщане;
}

Скенер sc = нов Скенер (System.in);
System.out.println(„Въведете регистрационния номер на автомобила, който ще бъде премахнат:“);
String licensePlate = sc.nextLine();

ако (parkedCars.contains (licensePlate)) {
parkedCars.remove (licensePlate);
налични слотове++;
System.out.println(„Колата е премахната успешно. Текущите налични слотове са: " + налични слотове);
} друго {
System.out.println(— Колата не е паркирана тук.);
}
}

Определете метод, viewParkedCars(). Подобно на горното, проверете дали няма паркирани коли. В противен случай покажете регистрационните номера на паркираните автомобили. За да направите това, използвайте цикъл for-each, за да обхождате елементите в ArrayList и да ги показвате един по един.

публиченстатиченневалиденviewParkedCars(){
ако (availableSlots == totalSlots) {
System.out.println(„Няма паркирани коли“.);
връщане;
}

System.out.println("Паркирани коли:");

за (Низ номер: паркирани коли) {
System.out.println (licensePlate);
}
}
}

Съберете всичко заедно и вашата система за паркиране е готова за използване.

Примерен резултат от програмата за паркиране

При стартиране на кода по-горе, програмата иска да въведете общия брой места за паркиране на съоръжението. При въвеждане на 5 дава възможност за паркиране на кола, премахване, преглед на всички паркирани коли и излизане от програмата. При избор на опция 1, той иска да въведете регистрационния номер на автомобила и намалява свободния слот, като го паркира.

При избор на опция 3 можете да видите регистрационния номер на колата, която току-що сте паркирали. При избор на опция 2 и въвеждане на регистрационния номер, програмата премахва автомобила и свободните места се увеличават с един.

Други системи за управление, които можете да изградите

Изграждайки системи за управление в Java, вие придобивате опит в различни аспекти на разработката на софтуер, управлението на бази данни, сигурността и системната интеграция. Няколко от проектите, които можете да разгледате, са системата за управление на инвентара, която ви помага да разберете моделирането на данни, CRUD операциите, проследяването на запасите и изпълнението на поръчки.

Можете да изградите система за управление на библиотека, за да научите организацията на данните и удостоверяването на потребителите. Системите за управление на служители или студенти са много сходни и могат да ви помогнат да научите ролевия контрол на достъпа и проследяване на присъствието.