温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Java实列 酒店订房管理系统

发布时间:2020-07-24 19:34:26 来源:网络 阅读:762 作者:linuxandman 栏目:编程语言

======思路======
Java实列 酒店订房管理系统

======实现======
Java实列 酒店订房管理系统

======代码======

import java.util.Scanner;
public class Reception {
public static void main(String[] args) {
//首先来一条友善的系统名称
System.out.println("****东方国际大酒店管理系统*****"+"\t\n");
Hotel hotel=new Hotel();//新建酒店类,以便调用酒店类的方法
Scanner in=new Scanner(System.in);//系统接受前台人员输入指令

    while(true) {
    System.out.println("订房输入 1; 退房输入 2:");
    int input=in.nextInt();//保存前台人员输入指令
    if (input==1) {//判断是否是“订房”
        System.out.println("********************客房信息*************************"+"\t\n");
        hotel.checkRoomInfo();//显示客房最新信息
        System.out.println("\t\n"+"*****************************************************"+"\t\n");
        System.out.println("入住的客房号:");
        int cin=in.nextInt();//保存前台人员输入指令
        hotel.checkIn(cin);//把指令传给酒店类的订房方法去处理
    }
    else if (input==2) {//判断是否是“退房”
        System.out.println("********************客房信息*************************"+"\t\n");
        hotel.checkRoomInfo();//显示客房最新信息
        System.out.println("\t\n"+"*****************************************************"+"\t\n");
        System.out.println("退房的客房号:");
        int con=in.nextInt();//保存前台人员输入指令
        hotel.checkOut(con);//把指令传给酒店类的退房方法去处理
    }else

    System.out.println("********************客房信息*************************"+"\t\n");
    hotel.checkRoomInfo();//显示客房最新信息
    System.out.println("\t\n"+"*****************************************************"+"\t\n");
    }
}

}

public class Room {
//房间编号
private int roomNum;
//房间类型
private String roomType;
//房间状态
private boolean roomStatus;

    //房间属性的get,set方法
public int getRoomNun() {
    return roomNum;
}
public void setRoomNun(int roomNun) {
    this.roomNum = roomNun;
}
public String getRoomType() {
    return roomType;
}
public void setRoomType(String roomType) {
    this.roomType = roomType;
}
public boolean isRoomStatus() {
    return roomStatus;
}
public void setRoomStatus(boolean roomStatus) {
    this.roomStatus = roomStatus;
}

//构造方法
public Room(int roomNun, String roomType, boolean roomStatus) {
    super();
    this.roomNum = roomNun;
    this.roomType = roomType;
    this.roomStatus = roomStatus;
}
//重写toString方法
@Override
public String toString() {
    return "【" + roomNum + ":" + roomType + ":" + (roomStatus?"客满":"空房" )+ "】 ";
}

}

public class Hotel {
//声明一个数组来记录酒店的楼层和客房
Room[][] room;
//酒店类构造方法
public Hotel() {
//二维数组定义酒店6层楼,每层楼8间客房
room =new Room[6][8];
//嵌套循环把各个房间的属性初始化
for(int i=0;i<room.length;i++) {//楼层
for(int j=0;j<room[i].length;j++) {//客房
//1,2层标准房, 客房编号101,102....201,202....601,602.....608
if(i==0||i==1) {
room[i][j]=new Room((i+1)100+j+1,"标准房",false);
}
//3,4层贵宾房
else if(i==2||i==3) {
room[i][j]=new Room((i+1)
100+j+1,"贵宾房",false);
}
//5,6层总统房
else if(i==4||i==5) {
room[i][j]=new Room((i+1)*100+j+1,"总统房",false);
}
}
}
}
//查看客房信息
public void checkRoomInfo() {
for(int i=0;i<room.length;i++) {//楼层
for(int j=0;j<room[i].length;j++) {//客房
System.out.print(room[i][j]);//同一层客房不换行显示
}
System.out.println();//不同楼层的客房信息换行显示
}
}
//客人订房
public void checkIn(int roomNum) {
for(int i=0;i<room.length;i++) {
for(int j=0;j<room[i].length;j++) {
if(room[i][j].getRoomNun()==roomNum) {
room[i][j].setRoomStatus(true);//如果客人订房,就把相应人房间的状态设置为客满。
}
}
}
}
//客人退房
public void checkOut(int roomNum) {
for(int i=0;i<room.length;i++) {
for(int j=0;j<room[i].length;j++) {
if(room[i][j].getRoomNun()==roomNum) {
room[i][j].setRoomStatus(false);//如果客人退房,就把相应人房间的状态设置为空房。
}
}
}
}
}

博主个人网站:www.davis-wiki.com

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI