日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

java實現停車場系統

瀏覽:89日期:2022-08-20 13:17:56

本文實例為大家分享了java實現停車場系統的具體代碼,供大家參考,具體內容如下

現開發一個停車系統,用戶根據車位停車

1)車主查看現在有無車位(最多100個車位),給車主隨機分配一個車位,如果該位置上有車,不能停2)按停車時間收費,3小時以內不收費,3小時以外,每小時2元,最大20元3)車主可以查看自己停車的車位和收費,以及停車的時長4)查看歷史停車記錄

管理員:

查看現有的剩余車位查看已停車的車位查看停在車位上的車以及歷史繳費

java實現停車場系統

java實現停車場系統

java實現停車場系統

java實現停車場系統

java實現停車場系統

java實現停車場系統

java實現停車場系統

Client

package com.gem.client;import java.util.Scanner;import com.gem.entity.Admin;import com.gem.entity.User;import com.gem.service.impl.AdminServiceImpl;import com.gem.service.impl.CarParkingServiceimpl;import com.gem.service.impl.UserServiceimpl;public class Client { public static void main(String[] args) { CarParkingServiceimpl carparkingservice = CarParkingServiceimpl.getCarparkingservice(); UserServiceimpl userserviceimpl = UserServiceimpl.getUserserviceimpl(); Scanner scanner = new Scanner(System.in); Menu1(carparkingservice, userserviceimpl, scanner); } private static void Menu1(CarParkingServiceimpl carparkingservice, UserServiceimpl userserviceimpl, Scanner scanner) { while (true) { System.out.println('****歡迎進入停車系統****'); System.out.println('***1.請輸入您的車牌***'); System.out.println('***2.管理員'); System.out.println('***3.退出****'); int choice = Integer.parseInt(scanner.nextLine().trim()); switch (choice) { case 1: System.out.println('請輸入您的車牌'); String chepai = scanner.nextLine().trim(); User a = userserviceimpl.login(new User(chepai)); if (a != null) { System.out.println('車牌登記成功'); Menu2(carparkingservice, userserviceimpl, scanner, a); } else { System.out.println('車牌登記失敗'); } break; case 2: Menu_Manger(carparkingservice, userserviceimpl); default: break; } } } //管理員的登錄注冊 private static void Menu_Manger(CarParkingServiceimpl carparkingservice, UserServiceimpl userserviceimpl) { AdminServiceImpl adminserviceimpl = AdminServiceImpl.getAdminSeriver(); while (true) { System.out.println('1.管理員登錄'); System.out.println('2.管理員注冊'); System.out.println('返回上一級'); Scanner scanner = new Scanner(System.in); int chose = Integer.parseInt(scanner.nextLine().trim()); switch (chose) { case 1: System.out.println('請輸入管理員賬號'); String name = scanner.nextLine().trim(); System.out.println('請輸入管理員密碼'); String password = scanner.nextLine().trim(); if (adminserviceimpl.login(name, password) != null) { System.out.println('登錄成功'); Menu_Manger2(carparkingservice, userserviceimpl, adminserviceimpl);//進行管理員操作 } else { System.out.println('登錄失敗'); return; } break; case 2: System.out.println('請輸入注冊賬號'); name = scanner.nextLine().trim(); System.out.println('請輸入注冊密碼'); password = scanner.nextLine().trim(); adminserviceimpl.register(new Admin(name, password)); break; case 3: return; default: return; } } } //管理員操作 private static void Menu_Manger2(CarParkingServiceimpl carparkingservice, UserServiceimpl userserviceimpl, AdminServiceImpl adminserviceimpl) { while (true) { System.out.println('***歡迎進入管理員操作***'); System.out.println('1.查看現有停車位'); System.out.println('2.查看停車位上的車以及繳費'); System.out.println('3.返回上一級'); Scanner scanner = new Scanner(System.in); int chose = Integer.parseInt(scanner.nextLine().trim()); switch (chose) { case 1: carparkingservice.showlist();//顯示目前所有的空的車位 break; case 2: carparkingservice.show(); break; case 3: return; default: System.out.println('輸入錯誤'); break; } } } private static void Menu2(CarParkingServiceimpl carparkingservice, UserServiceimpl userserviceimpl, Scanner scanner, User a) { while (true) { System.out.println('歡迎車牌為:' + a.getCarid() + '車主' + '請選擇您要的服務'); System.out.println('1.停車'); System.out.println('2.離開并繳費'); System.out.println('3.查看停車車位'); System.out.println('4.停車時長'); System.out.println('0.返回上一級'); int chose = Integer.parseInt(scanner.nextLine().trim()); switch (chose) { case 1: if (carparkingservice.chack(a.getCarid())) { break; } while (true) { int random = (int) (Math.random() * 10); //隨機一個車位 if (carparkingservice.parkcar(random, a.getCarid())) { System.out.println('停車成功,停車位置為:' + random); break; } else { System.out.println('當前車位有車'); } } break; case 2: if (carparkingservice.leavecar(a.getCarid())) { System.out.println('請繳費'); } else { System.out.println('該車未停'); } break; case 3: carparkingservice.showlist();//顯示目前所有的空的車位 break; case 4: carparkingservice.showcartime(a.getCarid());//顯示停車時長 break; case 0: return; default: System.out.println('輸入錯誤'); break; } } }}

Admin

package com.gem.entity;import java.util.ArrayList;import lombok.AllArgsConstructor;import lombok.Getter;import lombok.NoArgsConstructor;import lombok.Setter;@AllArgsConstructor@NoArgsConstructor@Getter@Setterpublic class Admin { private String username; private String password; private double money; private ArrayList<String> list = new ArrayList<String>(); @Override public String toString() { return username + 't' + password; } public Admin(String username, String password) { super(); this.username = username; this.password = password; }}

CarParking

package com.gem.entity;import java.text.SimpleDateFormat;import java.util.Date;import lombok.AllArgsConstructor;import lombok.Getter;import lombok.NoArgsConstructor;@AllArgsConstructor@NoArgsConstructor@Getterpublic class CarParking { //車位 public static String getLishi() { return lishi; } public static void setLishi(String lishi) { CarParking.lishi = lishi; } private int id; //停車的編號 private double money;//錢的計算 private String state; //當前停車狀態 private Date stime;//停車時間 private Date etime;//停車結束 private static double allmoney; private static String lishi = ''; public void setEtime() {//停車結束時間 etime = new Date(); SimpleDateFormat dateFormat = new SimpleDateFormat('yyyy-MM-dd'); String time = dateFormat.format(this.etime); } public void setStime() {//停車開始時間 stime = new Date(); SimpleDateFormat dateFormat = new SimpleDateFormat('yyyy-MM-dd'); String time1 = dateFormat.format(this.stime); } public String toString() { return id + 't' + money + 't' + stime; } public CarParking(int id, String state) { this.id = id; this.state = state; } public void CarPark(int id, String carid) { // TODO Auto-generated method stub this.id = id; this.state = carid; } public int getId() { return id; } public void setId(int id) { this.id = id; } public double getMoney() { return money; } public void setMoney(double money) { this.money = money; } public String getState() { return state; } public void setState(String state) { this.state = state; } public static double getAllmoney() { return allmoney; } public static void setAllmoney(double allmoney) { CarParking.allmoney = allmoney; }}

User

package com.gem.entity;import lombok.AllArgsConstructor;import lombok.Getter;import lombok.NoArgsConstructor;import lombok.Setter;@AllArgsConstructor@Setter@NoArgsConstructor@Getterpublic class User { private String carid; //車牌登錄 @Override public String toString() { return '車牌為' + carid; }}

AdminService

package com.gem.service;/* * 管理員業務接口 * * */import com.gem.entity.Admin;public interface AdminService { //登錄 Admin login(String username, String password); //注冊 boolean register(Admin admin);}

AdminServiceImpl

package com.gem.service.impl;import java.util.ArrayList;import com.gem.entity.Admin;import com.gem.service.AdminService;/* * 管理員類實現類 * */public class AdminServiceImpl implements AdminService { private ArrayList<Admin> adminList = new ArrayList<Admin>(); //單例餓漢模式 private static final AdminServiceImpl adminSeriver = new AdminServiceImpl(); public static AdminServiceImpl getAdminSeriver() { return adminSeriver; } private AdminServiceImpl() { } @Override //管理員登錄 public Admin login(String username, String password) {//登錄 for (Admin admin : adminList) { if (admin.getUsername().equals(username) && admin.getPassword().equals(password)) { return admin; } } return null; } @Override //添加管理員 public boolean register(Admin admin) { boolean flag = adminList.add(admin);//添加管理員 return flag; }}

CarParkingService

package com.gem.service;public interface CarParkingService { boolean parkcar(int id, String carid); //停車 void showlist();//顯示所有列表 boolean leavecar(String carid); //離開}

CarParkingServiceimpl

package com.gem.service.impl;import java.util.ArrayList;import java.util.Date;import com.gem.entity.CarParking;import com.gem.service.CarParkingService;public class CarParkingServiceimpl implements CarParkingService { private ArrayList<CarParking> carpaking = new ArrayList<CarParking>(); { for (int i = 1; i <= 10; i++) { carpaking.add(new CarParking(i, '當前車位為空')); // 為100個車位賦予編號 和狀態 } } private static CarParkingServiceimpl carparkingservice = new CarParkingServiceimpl(); public static CarParkingServiceimpl getCarparkingservice() { return carparkingservice; } public CarParkingServiceimpl() { } //停車過來的信息,車牌,還有車位,還有更改狀態,利用車位編號來改變內容 @Override public boolean parkcar(int id, String carid) { // TODO Auto-generated method stub for (CarParking car : carpaking) { if (id == car.getId() && car.getState().equals('當前車位為空')) { car.setState(carid); car.setStime(); return true; //停車成功 } } return false;//當前車位有車 } @Override //顯示所有停車系統的信息 public void showlist() { // TODO Auto-generated method stub for (CarParking car : carpaking) { System.out.println(car.getId() + 't' + car.getState()); } } public void showcartime(String carid) { // TODO Auto-generated method stub for (CarParking car : carpaking) { if (car.getState().equals(carid)) { car.setEtime(); Date time1 = car.getEtime();//得到當前的查詢時間 Date time2 = car.getStime();//得到開始時間 System.out.println('車位為:' + car.getId() + '車牌為' + car.getState()); System.out.println('停車時間為:' + car.getStime()); System.out.println('當前時間為:' + car.getEtime()); System.out.println('已經停車時間為:' + (time1.getTime() - time2.getTime()) / (1000 * 60 * 60)); } } } public boolean leavecar(String carid) { // TODO Auto-generated method stub for (CarParking car : carpaking) { if (car.getState().equals(carid)) { car.setEtime(); Date time1 = car.getEtime();//得到當前的查詢時間 Date time2 = car.getStime();//得到開始時間 long t = (time1.getTime() - time2.getTime()) / (1000 * 60 * 60); System.out.println('車位為:' + car.getId() + '車牌為' + car.getState()); System.out.println('停車時間為:' + car.getStime()); System.out.println('當前時間為:' + car.getEtime()); System.out.println('已經停車時間為:' + t); if (t <= 3) { car.setMoney(0); car.setAllmoney(car.getAllmoney() + car.getMoney()); //錢累加 } else if (t > 3 && t <= 13) { car.setMoney(2 * (t - 3)); car.setAllmoney(car.getAllmoney() + car.getMoney()); //錢累加 } else if (t > 13) { car.setMoney(20); car.setAllmoney(car.getAllmoney() + car.getMoney()); //錢累加 } car.setLishi(car.getLishi() + '車位:' + car.getId() + '收入金額為:' + car.getMoney() + 'n'); System.out.println('停車費為:' + car.getMoney()); car.setState('當前車位為空'); return true; } } return false; } public void show() { // TODO Auto-generated method stub for (CarParking car : carpaking) { System.out.println(car.getLishi()); return; } } public boolean chack(String carid) { for (CarParking car : carpaking) { if (car.getState().equals(carid)) { System.out.println('車輛正在停使中'); return true; } } return false; }}

UserService

package com.gem.service;import com.gem.entity.User;public interface UserService { //用車牌登錄 User login(User a);}

UserServiceimpl

package com.gem.service.impl;import java.util.ArrayList;import com.gem.entity.User;import com.gem.service.UserService;public class UserServiceimpl implements UserService { private ArrayList<User> user = new ArrayList<User>(); private static UserServiceimpl userserviceimpl = new UserServiceimpl(); //單例 private UserServiceimpl() { } public static UserServiceimpl getUserserviceimpl() { return userserviceimpl; } @Override public User login(User a) { //把車牌錄入 user.add(a); return a; }}

更多學習資料請關注專題《管理系統開發》。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
久久精品国语| 欧美日韩精品免费观看视频完整| 偷拍欧美精品| 天堂成人免费av电影一区| 日本一区二区三区视频在线看| 97久久亚洲| 精品国产亚洲一区二区三区大结局| 福利视频一区| 日韩精品免费一区二区在线观看| 欧洲激情综合| 亚洲色图国产| 国产精品久久久网站| 精品三级av| 91精品蜜臀一区二区三区在线| 亚洲永久字幕| 欧美精品中文| 日韩国产专区| 亚洲2区在线| 国产精成人品2018| 久久麻豆精品| 91精品国产自产观看在线| 国产成人久久精品一区二区三区| 久久激情一区| 91精品国产自产精品男人的天堂| 成人精品国产亚洲| 久久福利影视| 精品免费视频| 日韩一区精品字幕| 国产成人精选| 亚洲美女91| 蜜臀久久精品| 日本欧美一区二区| 久久久噜噜噜| 97精品久久| 米奇777超碰欧美日韩亚洲| 国产日韩一区二区三区在线| 成人久久一区| 欧美激情99| 免费观看久久久4p| 国产高清不卡| 国产精品综合色区在线观看| 亚洲国产一区二区在线观看| 欧美黑人巨大videos精品| 激情综合网五月| 麻豆久久一区二区| 亚洲啊v在线免费视频| 久久久亚洲一区| 里番精品3d一二三区| 久久国产精品久久w女人spa| 五月天av在线| 久久只有精品| 日韩成人一级| 国产农村妇女精品一二区| 国产在线看片免费视频在线观看| 青青国产精品| 久久国产高清| 欧美 日韩 国产精品免费观看| 美女国产一区二区三区| 伊人久久一区| 亚洲精品网址| 亚洲伦乱视频| 国产不卡一区| 久久99久久人婷婷精品综合| 日韩一级欧洲| 日韩在线欧美| 国产成人久久精品麻豆二区| 国产午夜一区| 日韩黄色在线观看| 亚洲精品裸体| 综合国产视频| 午夜在线视频观看日韩17c| 九色porny丨国产首页在线| 麻豆国产精品| 欧美国产免费| 国产精品nxnn| 国产精品天天看天天狠| 日韩精品亚洲专区| 日韩欧美精品一区二区综合视频| 欧美日韩少妇| 国产亚洲精品自拍| 悠悠资源网久久精品| 蜜臀av免费一区二区三区| 久久精品影视| 久久在线免费| 欧美高清不卡| 99在线精品免费视频九九视| 午夜久久tv| 亚洲永久字幕| 蜜臀av在线播放一区二区三区| 老鸭窝亚洲一区二区三区| 日韩视频中文| 在线看片日韩| 亚州欧美在线| 无码日韩精品一区二区免费| 亚洲日本国产| 91精品一区| 国产精品久久国产愉拍| 卡一卡二国产精品| 福利欧美精品在线| 神马日本精品| 亚洲欧美不卡| 日韩欧美久久| 国产精成人品2018| 日韩成人a**站| 久久亚洲精品中文字幕蜜潮电影| 亚洲精品成人| 日韩一区二区三区精品| 国产欧美日韩亚洲一区二区三区| 日韩国产91| 麻豆国产精品视频| 日本在线精品| 亚洲天堂免费| 麻豆精品久久| 国产一区清纯| 中文字幕av一区二区三区人| 69堂精品视频在线播放| 成人午夜在线| 国产亚洲一区在线| 国产精区一区二区| 日韩在线精品| 蜜臀精品久久久久久蜜臀| 欧美精品国产一区| 蜜桃av在线播放| 视频在线观看一区| 久久99性xxx老妇胖精品| 久久久人人人| 日韩激情一区二区| 日韩电影免费网址| 天堂成人国产精品一区| 国产麻豆一区| 亚洲国产专区校园欧美| 日韩极品在线观看| 久久久成人网| 欧美一区久久| 国产一区欧美| 国产午夜久久av| 久久国产电影| 欧美另类中文字幕 | 日韩欧美美女在线观看| 国产成人久久精品麻豆二区 | 国产一区二区三区视频在线| 1024精品久久久久久久久| 国产日韩欧美三级| 91超碰国产精品| 嫩草伊人久久精品少妇av杨幂| 亚洲播播91| 国产欧美久久一区二区三区| 一区二区三区四区在线看| 日本精品一区二区三区在线观看视频| 日韩不卡一区| 91成人小视频| 自由日本语亚洲人高潮| 久久精品国产福利| 亚洲天堂av资源在线观看| 日本欧美国产| 欧美日韩网址| 日韩视频在线一区二区三区 | 免费久久精品视频| 午夜精品成人av| 国产欧美日韩一区二区三区四区| 欧美日韩一二| 日产精品一区二区| 欧美日一区二区在线观看| 一区二区视频欧美| 美女久久99| 色狠狠一区二区三区| 免费不卡中文字幕在线| 美日韩一区二区三区| 日韩精品中文字幕吗一区二区| 伊人久久大香线蕉av不卡| 粉嫩av一区二区三区四区五区 | 另类国产ts人妖高潮视频| 蜜臀国产一区| 毛片不卡一区二区| 日本免费在线视频不卡一不卡二| 伊人精品视频| 亚洲大片在线| 国产一区二区三区免费在线| 91伊人久久| 最新国产精品视频| 性一交一乱一区二区洋洋av| 日韩精品一区二区三区免费观影 | 日韩伦理一区| 精品九九久久| 国产精品久久久亚洲一区| 亚洲一区二区免费在线观看| 久久中文字幕二区| 蜜桃av在线播放| 久久男人天堂| 中文字幕在线高清| 日本一区二区高清不卡| 久久国产精品美女| 国产精品白浆| 国产日产精品一区二区三区四区的观看方式| 国产精品免费看| 国产亚洲欧洲| 免费在线观看精品| 亚洲精品乱码日韩| 日韩va亚洲va欧美va久久| 亚洲精品婷婷|