重慶分公司,新征程啟航
為企業提供網站建設、域名注冊、服務器等服務
為企業提供網站建設、域名注冊、服務器等服務
package test;
10余年的南漳網站建設經驗,針對設計、前端、開發、售后、文案、推廣等六對一服務,響應快,48小時及時工作處理。成都全網營銷的優勢是能夠根據用戶設備顯示端的尺寸不同,自動調整南漳建站的顯示方式,使網站能夠適用不同顯示終端,在瀏覽器中調整網站的寬度,無論在任何一種瀏覽器上瀏覽網站,都能展現優雅布局與設計,從而大程度地提升瀏覽體驗。成都創新互聯公司從事“南漳網站設計”,“南漳網站推廣”以來,每個客戶項目都認真落實執行。
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.HashMap;
import java.util.Map;
public class Test {
public static void main(String[] args) throws IOException{ ?
MapString, Room rooms =initRooms();
BufferedReader ctrl=new BufferedReader(new InputStreamReader(System.in));
getRoomState(rooms);
boolean exit = true;
while(exit){
println("");
print("菜單: ");
print(" 1:訂房");
print(" 2:退房");
print(" 3:查詢");
print(" 4:退出");
println("");
print(" 請輸入:");
String num =ctrl.readLine();
cls();
switch (num) {
??? ?case "1":
??? ??? ? print("房間號:");
??? ??? ? String rid = ctrl.readLine();
??? ??? ? print("帳號:");
??? ??? ? String user = ctrl.readLine();
??? ??? ? print("密碼:");
??? ??? ? String pwd = ctrl.readLine();
??? ??? ? print("住天數:");
??? ??? ? String day = ctrl.readLine();
??? ??? ? Room r = rooms.get(rid);
??? ??? ? if(r==null){
??? ??? ??? ? println("沒有此房間");
??? ??? ? }else{
??? ??? ??? ? r.setDay(Integer.parseInt(day));
??? ??? ??? ? r.setName(user);
??? ??? ??? ? r.setPwd(pwd);
??? ??? ??? ? rooms.put(r.getrId(),r);
??? ??? ??? ? println("訂房成功??!");
??? ??? ??? ? getRoomState(rooms);
??? ??? ? }
??? ??? ?break;
??? ?case "2":
??? ??? ?print("帳號:");
??? ??? ? String user2 = ctrl.readLine();
??? ??? ? print("密碼:");
??? ??? ? String pwd2 = ctrl.readLine();
??? ??? ? Room r2 =getRoowByUserAndPwd(rooms,user2,pwd2);
??? ??? ? if(r2==null){
??? ??? ??? ? println("你沒有訂房!!");
??? ??? ? }else{
??? ??? ??? ?r2.setName("");
??? ??? ??? ?r2.setPwd("");
??? ??? ??? ?r2.setDay(0);
??? ??? ??? ?rooms.put(r2.getrId(),r2);
??? ??? ??? ?println("退訂成功");
??? ??? ??? ?getRoomState(rooms);
??? ??? ? }
??? ??? ?break;
??? ?case "3":
??? ??? ? print("帳號:");
??? ??? ? String user3 = ctrl.readLine();
??? ??? ? print("天數:");
??? ??? ? String day3 = ctrl.readLine();
??? ??? ? Room r3 =getRoowByUserAndDay(rooms,user3,day3);
??? ??? ? if(r3==null){
??? ??? ??? ? println("你沒有訂房!!");
??? ??? ? }else{
??? ??? ??? ?println(r3.toString());
??? ??? ? }
??? ??? ?break;
??? ?case "4":exit = false ;break;
?}
getRoomState(rooms);
}
}
private static void getRoomState(MapString, Room rooms) {
println("房間情況:");
for (Room r : rooms.values()) {
?? println("房號:"+r.getrId()+"=" + r.getPrice()+" 狀態:"+r.isEmptyRoom());
}
}
private static Room getRoowByUserAndDay(MapString, Room rooms,String user,String day) {
for (Room r : rooms.values()) {
?? if(r.getName().equals(user) day.equals(r.getDay()+""))
??? ?? return r;
}
return null;
}
private static Room getRoowByUserAndPwd(MapString, Room rooms,String user,String pwd) {
for (Room r : rooms.values()) {
?? if(r.getName().equals(user) pwd.equals(r.getPwd()+""))
??? ?? return r;
}
return null;
}
/**
* 初始化房間
*/
private static MapString, Room initRooms() {
MapString, Room result = new HashMapString, Room();
result.put("8001", new Room("8001",100.0));
result.put("8002", new Room("8002",100.0));
result.put("8003", new Room("8003",100.0));
result.put("8004", new Room("8004",200.0));
result.put("8005", new Room("8005",200.0));
result.put("8006", new Room("8006",200.0));
result.put("8007", new Room("8007",300.0));
result.put("8008", new Room("8008",300.0));
result.put("8009", new Room("8009",300.0));
return result;
}
public static void cls() throws IOException{
Runtime.getRuntime().exec("clear");
}
public static void println(Object str){
System.out.println(str);
}
public static void print(Object str){
System.out.print(str);
}
}
class Room{
private String rId="";
private String name="";
private String pwd="";
private int day=0;
private double price=0.0;
public String isEmptyRoom(){
return this.name.equals("")?"空房間":"已出租";
}
public Room(String rId, double price) {
this.rId = rId;
this.price = price;
}
@Override
public String toString() {
return "房號=" + rId + ", 用戶=" + name + ", 天數=" + day
??? ?+ ", 租金=" + price + ", 總金額=" + (price*day);
}
public Room(String name, String pwd, int day) {
this.name = name;
this.pwd = pwd;
this.day = day;
}
public Room() {
}
public String getrId() {
return rId;
}
public void setrId(String rId) {
this.rId = rId;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
public int getDay() {
return day;
}
public void setDay(int day) {
this.day = day;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
}
比較粗糙將就
同步問題吧,,,把房間設置狀態,及時更新,,保證數據狀態一致,,,就可以處理了
酒店類
package fdsa;
public class Hotel {
private String hotelID;
private String hotelName;
private String hoteladdess;
public String getHotelID() {
return hotelID;
}
public void setHotelID(String hotelID) {
this.hotelID = hotelID;
}
public String getHotelName() {
return hotelName;
}
public void setHotelName(String hotelName) {
this.hotelName = hotelName;
}
public String getHoteladdess() {
return hoteladdess;
}
public void setHoteladdess(String hoteladdess) {
this.hoteladdess = hoteladdess;
}
public String getHotelPhone() {
return hotelPhone;
}
public void setHotelPhone(String hotelPhone) {
this.hotelPhone = hotelPhone;
}
private String hotelPhone;
}
客戶類
public class Client{
private String clientName;
private String clientID;
public String getClientName() {
return clientName;
}
public void setClientName(String clientName) {
this.clientName = clientName;
}
public String getClientID() {
return clientID;
}
public void setClientID(String clientID) {
this.clientID = clientID;
}
}
房間類
public class Room{
private String roomID;
private Hotel hotelID;
public String getRoomID() {
return roomID;
}
public void setRoomID(String roomID) {
this.roomID = roomID;
}
public Hotel getHotelID() {
return hotelID;
}
public void setHotelID(Hotel hotelID) {
this.hotelID = hotelID;
}
public String getRoomAmount() {
return roomAmount;
}
public void setRoomAmount(String roomAmount) {
this.roomAmount = roomAmount;
}
private String roomAmount;
}