100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > 酒店管理系统的部分功能实现代码(预订 退订 查看所有房间状态)

酒店管理系统的部分功能实现代码(预订 退订 查看所有房间状态)

时间:2020-08-06 18:26:11

相关推荐

酒店管理系统的部分功能实现代码(预订 退订 查看所有房间状态)

//没有对输入房间号进行限制

//没有限制使用该系统的人

package com.baidu.HotelManager;import java.util.Objects;public class Room {private int roomId;//房间编号private String type;//房间类型private boolean roomState;//房间状态public Room() {}public Room(int roomId, String type, boolean roomState) {this.roomId = roomId;this.type = type;this.roomState = roomState;}public void setRoomId(int roomId) {this.roomId = roomId;}public void setType(String type) {this.type = type;}public void setRoomState(boolean roomState) {this.roomState = roomState;}public int getRoomId() {return roomId;}@Overridepublic boolean equals(Object obj) {if(obj == null || !(obj instanceof Room)) return false;if( this == obj) return true;Room room = (Room)obj;return this.getRoomId() == room.getRoomId();}@Overridepublic int hashCode() {return Objects.hash(roomId, type, roomState);}@Overridepublic String toString() {return "房间属性{" +"房间编号=" + roomId +", 房间类型='" + type + '\'' +", 房间状态=" + roomState +'}';}public String getType() {return type;}public boolean isRoomState() {return roomState;}}

package com.baidu.HotelManager;public class Hotel {//酒店应该创建一个基于Room的二维数组//Room[0][0]代表房间号为101的房间//Room{1][0]代表房间号为201的房间private Room[][] rooms;private String name;//默认酒店有三层楼,每层楼有8个房间public Hotel() {this.rooms = new Room[3][8];//只有动态分配了数组,还没有将ROOM类型数据放入数组中for (int i = 0; i <rooms.length ; i++) {for (int j = 0; j <rooms[i].length ; j++) {if (i==0){rooms[i][j] = new Room((i+1)*100+j+1,"单人间",false);}if (i==1){rooms[i][j] = new Room((i+1)*100+j+1,"标准间",false);}if (i==2){rooms[i][j] = new Room((i+1)*100+j+1,"豪华间",false);}}}}//酒店的管理方法://预订房间//需要传入两个参数,参数x代表楼层,参数y代表房间public void Booking(int roomId){//如果输入房间号正确的情况下,判断当前房间的roomStateif(rooms[roomId/100-1][roomId%100-1].isRoomState()==true){//如果roomState为trueSystem.out.println("对不起,当前房间已被预订!");return;}//否则将当前房间的roomState改变为true,提示用户预订房间成功rooms[roomId/100-1][roomId%100-1].setRoomState(true);System.out.println("恭喜您,房间预订成功!");}//退订房间public void UnSubscribe(int roomId){//如果输入房间号正确的情况下,判断当前房间的roomStateif(rooms[roomId/100-1][roomId%100-1].isRoomState()==false){//如果roomState为falseSystem.out.println("当前房间没有在使用,请重新确认!");return;}//否则将当前房间的roomState改变为true,提示用户退订房间成功rooms[roomId/100-1][roomId%100-1].setRoomState(false);System.out.println("恭喜您,房间退订成功!");}//查看可以预定的房间public void ShowBooking(){//遍历所有房间for (int i = 0; i <rooms.length ; i++) {for (int j = 0; j <rooms[i].length ; j++) {if(rooms[i][j].isRoomState()==false){System.out.println("房间号:"+((i+1)*100+1+j)+"可以预订");}}}}//查看所有房间状态public void ShowAllRooms(){//遍历所有房间for (int i = 0; i <rooms.length ; i++) {for (int j = 0; j <rooms[i].length ; j++) {System.out.println((i+1)*100+1+j+"号房间的状态是:"+rooms[i][j].isRoomState());}}}}

package com.baidu.HotelManager;import java.sql.SQLOutput;import java.util.Scanner;public class Test {public static void main(String[] args) {Hotel hotel =new Hotel();while (true){System.out.println("============================");System.out.println("欢迎使用酒店管理系统!");System.out.println("请根据功能编号使用本系统!");System.out.println("[1]预订房间[2]退订房间[3]查看所有可以预订的房间[4]查看所有房间状态[0]退出本系统");Scanner j = new Scanner(System.in);System.out.println("请输入您要使用的功能编号:");int a = j.nextInt();if (a == 1) {System.out.println("请输入您要预订的房间编号:");int num = j.nextInt();hotel.Booking(num);}if (a == 2) {System.out.println("请输入您要退订的房间编号:");int num1 = j.nextInt();hotel.UnSubscribe(num1);}if (a == 3) {hotel.ShowBooking();}if (a == 4) {hotel.ShowAllRooms();}if(a==0) return;}}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。