简单酒店管理系统

Java SE基础篇小项目

与简单的学生管理系统一样,主要运用了增删改查
测试类中的if判断可以改为switch判断语句

import java.util.Scanner;
//测试类
public class Test {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        Hotel h = new Hotel();

        System.out.println("欢迎使用酒店管理系统");
        while(true){
            System.out.println("1、订房 2、退房 3、查看所有房间状态 4、退出系统");
            int i = sc.nextInt();
            if (i==1){
                System.out.println("请输入需要定的房间号:");
                int o = sc.nextInt();
                h.jia(o);
            }else if (i==2){
                System.out.println("请输入需要退的房间号:");
                int o = sc.nextInt();
                h.tui(o);
            }else if (i==3){
                h.dayin();
            }else if (i==4){
                h.t();
                return;
            }else {
                System.out.println("功能编号输入错误,请重新输入");
            }
        }
    }
}
//酒店
public class Hotel{
	// private Room[][] rooms;rooms = new Room[6][10];
    //上方代码可以改写成 Room[][] rooms = new Room[6][10];
        private Room[][] rooms;
        public Hotel(){//无参构造类加载的时候直接执行此代码
            rooms = new Room[6][10];//运用了二维数组
        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,"单人间",true);
                }else if (i==1){
                    rooms[i][j]=new Room((i+1)*100+j+1,"双人间",true);
                }else if (i==2){
                    rooms[i][j]=new Room((i+1)*100+j+1,"标准间",true);
                }else if (i==3){
                    rooms[i][j]=new Room((i+1)*100+j+1,"豪华间",true);
                }else if (i==4){
                    rooms[i][j]=new Room((i+1)*100+j+1,"主题房间",true);
                }else if (i==5){
                    rooms[i][j]=new Room((i+1)*100+j+1,"总统套房",true);
                }
            }
        }
    }

//查看所有房间
    public void dayin(){
        for (int i = 0; i < rooms.length; i++) {
            for (int j = 0; j < rooms[i].length; j++) {
                Room r =rooms[i][j];
                System.out.print(r);
                //简化后
                //System.out.print(rooms[i][j]);
            }
            System.out.println();
        }
    }
//添加房客
    public void jia (int id){
       Room r = rooms[id/100-1][id%100-1];
       r.setZhuangtai(false);
        System.out.println(r.getId()+"成功订房");
    }
//退房
    public void tui(int id){
        Room r = rooms[id/100-1][id%100-1];
        r.setZhuangtai(true);
        System.out.println(r.getId()+"已退房");
    }
//退出系统
    public void t(){
        System.out.println("已退出酒店管理系统!");
    }

}
import java.util.Objects;
//房间
public class Room {
    private int id;
    private String leixing;	//房间类型
    private boolean zhuangtai;//true为空闲

    public Room() {
    }
    public Room(int id, String leixing, boolean zhuangtai) {
        this.id = id;
        this.leixing = leixing;
        this.zhuangtai = zhuangtai;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getLeixing() {
        return leixing;
    }

    public void setLeixing(String leixing) {
        this.leixing = leixing;
    }

    public boolean isZhuangtai() {
        return zhuangtai;
    }

    public void setZhuangtai(boolean zhuangtai) {
        this.zhuangtai = zhuangtai;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        Room room = (Room) o;
        return id == room.id &&
                zhuangtai == room.zhuangtai &&
                Objects.equals(leixing, room.leixing);
    }

    @Override
    public int hashCode() {
        return Objects.hash(id, leixing, zhuangtai);
    }

    @Override
    public String toString() {
        return "【" + id +"\t"+ leixing + '\t' + (zhuangtai ?"空闲":"占用" )+ '】';
    }//三目运算符
}
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值