用Java编写一个简单的酒店管理系统

用Java编写一个简单的酒店管理系统

 为某个酒店编写程序:酒店管理系统,模拟订房、退房、打印所有房间状态等功能。
   1、该系统的用户是:酒店前台。
   2、酒店使用一个二维数组来模拟。“Room[][] rooms;”
   3、酒店中的每一个房间应该是一个java对象:Room
   4、每一个房间Room应该有:房间编号、房间类型、房间是否空闲.
   5、系统应该对外提供的功能:
  可以预定房间:用户输入房间编号,订房。
  可以退房:用户输入房间编号,退房。
  可以查看所有房间的状态:用户输入某个指令应该可以查看所有房间状态。
import org.w3c.dom.ls.LSOutput;

import java.util.Objects;
//测试
public class HotelTest {
    public static void main(String[] args) {
        Hotel h=new Hotel();
        java.util.Scanner s=new java.util.Scanner(System.in);
        System.out.println("欢迎使用酒店管理系统!请认真阅读以下功能。");
        System.out.println("功能编号:1表示打印房间列表,2表示预定房间,3表示退订房间,4表示退出系统");
        while(true){
            System.out.println("请输入功能编号:");
            int i=s.nextInt();
            if(i==1){h.pri();}
            else if(i==2){
                System.out.println("请输入要预定的房间编号:");
                h.order(s.nextInt());
            }else if(i==3){
                System.out.println("请输入要退订的房间编号:");
                h.exit(s.nextInt());
            }else if(i==4){
                System.out.println("欢迎下次使用酒店管理系统,再见!");
                return;
            }else{
                System.out.println("功能编号输入错误,请重新输入!");
            }
        }

    }
}
//酒店管理系统
public class Hotel{
    Room[][] rooms;
    public Hotel(){
        rooms=new Room[3][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);}
                if(i==1){rooms[i][j]=new Room((i+1)*100+j+1,"双人间",true);}
                if(i==2){rooms[i][j]=new Room((i+1)*100+j+1,"三人间",true);}*/
                rooms[i][j]=new Room();
                rooms[i][j].setNo((i+1)*100+j+1);
                rooms[i][j].setType(i==0?"单人间":(i==1?"双人间":"三人间"));
                rooms[i][j].setStatus(true);
            }
        }
    }
    public void pri(){
        for (int i = 0; i <rooms.length ; i++) {
            for (int j = 0; j <rooms[i].length ; j++) {
                System.out.print(rooms[i][j]);
            }
            System.out.println();
        }
    }
    public void order(int no){
        if(rooms[no/100-1][no%100-1].isStatus()==true) {
            rooms[no / 100 - 1][no % 100 - 1].setStatus(false);
            System.out.println(no + "号房间预订成功!");
        }else{
            System.out.println(no+"号房间已被预订,房间预订失败!");
        }
    }
    public void exit(int no){
        if(rooms[no/100-1][no%100-1].isStatus()==false) {
            rooms[no / 100 - 1][no % 100 - 1].setStatus(true);
            System.out.println(no + "号房间退订成功!");
        }else{
            System.out.println(no+"号房间已被退订,房间退订失败!");
        }
    }
}
//房间
public class Room{
    private int no;
    private String type;
    private boolean status;

    public Room() {
    }

    public Room(int no, String type, boolean status) {
        this.no = no;
        this.type = type;
        this.status = status;
    }

    public int getNo() {
        return no;
    }

    public void setNo(int no) {
        this.no = no;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public boolean isStatus() {
        return status;
    }

    public void setStatus(boolean status) {
        this.status = status;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        Room room = (Room) o;
        return no == room.no;
    }

    @Override
    public String toString() {
        return "["+no+","+type+","+(status?"空闲":"占用")+"]";
    }
}
  • 5
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
通过软件开发的训练,使学生进一步掌握编写的方法和技术,培养工程设计能力和综合分析、解决问题的能力。 具体如下: 1. 学习和实践在分析和设计计算机应用系统所需要的知识,包括面向对象的系统分析与设计,编码和测试方面的知识; 2. 熟悉自动化的软件开发工具Rational Rose,并将其运用于软件开发的全过程; 3. 进一步加强和提高软件工程文档的编写能力; 4. 培养协作能力和团队精神。 5. 熟悉Java 数据库连接方法,能在程序中读写数据库。 二、设计正文 1.概述 本酒店管理系统根据酒店的日常业务运作而设计,能够更好地管理客房类型,其中包括房间的信息修改、增加房间、改变价格等功能;客房的开设、退房,其中包括预定房间、团体开房、散客开房、收银结账等业务,系统操作流程与酒店业务流程大概一致,界面友好、整洁并且操作容易、维护简单;系统数据库采用SQL Server2000,稳定、安全,有酒店业务操作知识的人皆能方便操作。本系统在windows操作系统下,使用rational rose对系统进行分析与设计,使用eclipse作为开发工具,使用SQL2000存储数据信息,以实现为客户开房、预定房间、退房、管理酒店房间信息等主要功能。 1.1开发背景 随着外出人流因为生活,商业等方面的增多,酒店的发展也日益的迅猛,由于顾客量的增多,客户登记时间的广泛,酒店收益的日益增多,仅仅依靠手写的老式输入记账法,是无法满足酒店的需求的,同时这也是浪费人力和时间的。因此酒店管理正趋向信息化,如何让酒店管理人员尽可能更加注重服务质量,人性化处理日常管理事务,是目前酒店管理系统的主要目标。本系统正是在充分对酒店日常的管理流程进行分析后,运用java这个很强大的工具制作出人性化、方便快捷、界面友好的酒店前台管理系统。 1.2开发环境与工具和功能模块的初步设计 本系统设计是在Eclipse3.2平台上使用jav
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值