java客房管理小项目,适合小白练手!

这是一个适合Java初学者的客房管理小项目,包含入住、退房、搜索等功能。系统支持5层楼,每层10间客房,通过数字标识。项目提供了一个实践Java编程的机会,帮助初学者理解基本的酒店管理流程。

java客房管理小项目
这个客房管理小项目,适合java初学者练手。功能虽然不多,但是内容很齐全!
喜欢这样文章的可以关注我,我会持续更新,你们的关注是我更新的动力!需要更多java学习资料的也可以私信我!
在这里插入图片描述
共有5层,每层10间客房,以数字101–509标示;
具有入住,退房,搜索,退出四个简单功能;

public class Hotel {
    static final int floor = 5;
    static final int order = 10;
    private static int countFloor;
    private static int countOrder;
    private static String[][] rooms = new String[floor][order]; 
//main函数代表酒店的基本功能,入住,退房,查询,其他;
public static void main(String[] args) {
    Scanner scan = new Scanner(System.in);
    String temp = null;
    while(true){
        //提醒用户选择输入
        System.out.println("请选择输入  in out search quit : ");
        temp = scan.next();
        int room = 0;
        if("in".equals(temp)){
            while(true){
                System.out.println("请输入房间号:");
                room = scan.nextInt();
                if(isRightRoom(room,1)){
                    break;
                }
            }
            System.out.println("请输入名字:");
            String name = scan.next();
            if(in(room,name)){
                System.out.println("恭喜您,入住成功");
                System.out.println(room + " : "+name);
            }
        }else if("out".equals(temp)){
            while(true){
                System.out.println("请输入房间号:");
                room = scan.nextInt();
                if(isRightRoom(room,0)){
                    break;
                }
            }
            if(out(room)){
                System.out.println("退房成功,欢迎下次光临");
            }
        }else if("search".equals(temp)){
            System.out.println("请输入查询的房间号(-1表示全部)");
            room = scan.nextInt();
            search(room);
        }else if("quit".equals(temp)){
            break;
        }else{
            System.out.println("您的输入有误,请再次输入!");
        }
    }
}

//flag:1 检查房间号输入正确 且 无人入住  0 仅检查房间号输入正确
private static boolean isRightRoom(int room,int flag) {
    //校验房间号是否输入有误
    countFloor = room / 100 - 1;
    countOrder = room % 100 - 1;
    if(countFloor < 0 || countFloor >= floor || countOrder < 0 || countOrder >= order ){
        System.out.println("输入的房间号有误");
        return false;
    }
    if(flag == 1){
        if(rooms[countFloor][countOrder] != null){
            System.out.println("房间已经入住");
            return false;
        }
    }
    return true;
}

//旅馆入住功能实现,in(room,name) countFloor:计算出的楼层 countOrder:计算出的房间顺序 
private static boolean in(int room,String name){
    rooms[countFloor][countOrder] = name;
    return true;
}

//旅馆退房功能实现,out(room),
private static boolean out(int room){
    //校验房间号是否有人入住
    if(rooms[countFloor][countOrder] == null){
        System.out.println("房间未曾入住,退房有误");
        return false;
    }
    rooms[countFloor][countOrder] = null;
    return true;
}

//旅馆搜索功能,search(room)
private static void search(int room){
    if(room == -1){
        int roomNum = 0;
        for(int i=0;i<floor;i++){
            for(int j=0;j<order;j++){
                roomNum = (i + 1) * 100 + j + 1;
                System.out.println(roomNum + "->" + 
                        (rooms[i][j] == null ? "empty" : rooms[i][j]));
            }
        }
    }else{
        //校验房间号是否正确
        if(!isRightRoom(room,0)){
            System.out.println("抱歉,房间输入错误!");               
        }else{
            System.out.println(rooms[countFloor][countOrder]);
        }
    }
}}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值