栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java数组练习项目(简单的酒店管理系统)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java数组练习项目(简单的酒店管理系统)

房间类(Room):

属性:房间编号(int),房间类型(String),是否为空(boolean)

方法:构造方法,set/get方法,toString方法(重写)

class Room{
    private int id;
    private String roomType;
    private boolean isEmpty;
    //constructor

    public Room() {
    }

    public Room(int id, String roomType, boolean isEmpty) {
        this.id = id;
        this.roomType = roomType;
        this.isEmpty = isEmpty;
    }
    //setter and getter

    public int getId() {
        return id;
    }

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

    public String getRoomType() {
        return roomType;
    }

    public void setRoomType(String roomType) {
        this.roomType = roomType;
    }

    public boolean isEmpty() {
        return isEmpty;
    }

    public void setEmpty(boolean empty) {
        isEmpty = empty;
    }

    @Override
    public String toString() {
        return "(" + this.roomType + ")" + this.id + " is " + (this.isEmpty?"empty":"subcribed");
    }
}

Room类并没有赋予很多方法,只重写了toString方法,便于直接打印房间信息

前台类(FrontDesk):

属性:房间列表(Room[][])

方法:构造方法,set/get方法,预定房间方法(reservation),退订房间(checkOut)方法,便利所有房间(ergodic)方法,初始化(initialization)方法,主方法

package com.array;


import java.util.Scanner;

public class FrontDesk {
    private Room[][] roomsList;
    //constructor
    public FrontDesk() {

    }

    public FrontDesk(Room[][] roomsList) {
        this.roomsList = roomsList;
    }

    public Room[][] getRoomsList() {
        return roomsList;
    }

    public void setRoomsList(Room[][] roomsList) {
        this.roomsList = roomsList;
    }
    public void reservation(int reserveNumber){
        if (reserveNumber/100 >5 || reserveNumber%100 > 20){
            System.out.println("Room number error, please re-enter");
            return;
        }
        for (int i = 0;i < roomsList.length;i++){
            for (int j = 0;j < roomsList[i].length;j++){
                if (roomsList[i][j].getId() == reserveNumber){
                    if (roomsList[i][j].isEmpty()){
                        roomsList[i][j].setEmpty(false);
                        System.out.println("Reservation successful");
                        return;
                    }else {
                        System.out.println("Reservation failed, the room has been occupied");
                        return;
                    }
                }
            }
        }
    }
    public void checkOut(int outNumber){
        if (outNumber/100 >5 || outNumber%100 > 20){
            System.out.println("Room number error, please re-enter");
            return;
        }
        for (int i = 0;i < roomsList.length;i++){
            for (int j = 0;j < roomsList[i].length;j++){
                if (roomsList[i][j].getId() == outNumber){
                    System.out.println((!roomsList[i][j].isEmpty())?"Unsubscribe successfully":"This room is not subscribed. Please re verify the room number");
                   return;
                }
            }
        }
    }
    public void ergodic(){
        for (int i = 0;i < roomsList.length;i++){
            for (int j = 0;j < roomsList[i].length;j++){
                System.out.print(roomsList[i][j] + " ");
            }
            System.out.println();
        }
    }
    public void initialization(){
        this.setRoomsList(new Room[5][20]);
        for (int i = 0;i < roomsList.length;i++){
            for (int j = 0;j < roomsList[i].length;j++){
                this.roomsList[i][j] = new Room();
                this.roomsList[i][j].setId((i+1) * 100 + (j+1));
                this.roomsList[i][j].setEmpty(true);
                if (i <= 2){
                    this.roomsList[i][j].setRoomType("single room");
                }else {
                    this.roomsList[i][j].setRoomType("Double room");
                }
            }
        }
    }

    public static void main(String[] args) {
        FrontDesk huang = new FrontDesk();
        huang.initialization();
        Scanner scanner = new Scanner(System.in);
        while (true){
            System.out.println("Welcome to our hotel. What do you need to do?");
            System.out.println("1. Book a room 2. Unsubscribe a room 3. View all rooms 4. Exit the system");
            int input = scanner.nextInt();
            switch (input){
                case 1:
                    System.out.println("Please enter the reservation number");
                    int reserveNumber = scanner.nextInt();
                    huang.reservation(reserveNumber);
                    break;
                case 2:
                    System.out.println("Please enter the unsubscribe room number");
                    int outNumber = scanner.nextInt();
                    huang.checkOut(outNumber);
                    break;
                case 3:
                    huang.ergodic();
                    break;
                case 4:
                    System.exit(0);
                    break;
                default:
                    System.out.println("input error, please re-enter");
            }
        }
    }
}

完整代码如下

package com.array;


import java.util.Scanner;

public class FrontDesk {
    private Room[][] roomsList;
    //constructor
    public FrontDesk() {

    }

    public FrontDesk(Room[][] roomsList) {
        this.roomsList = roomsList;
    }

    public Room[][] getRoomsList() {
        return roomsList;
    }

    public void setRoomsList(Room[][] roomsList) {
        this.roomsList = roomsList;
    }
    public void reservation(int reserveNumber){
        if (reserveNumber/100 >5 || reserveNumber%100 > 20){
            System.out.println("Room number error, please re-enter");
            return;
        }
        for (int i = 0;i < roomsList.length;i++){
            for (int j = 0;j < roomsList[i].length;j++){
                if (roomsList[i][j].getId() == reserveNumber){
                    if (roomsList[i][j].isEmpty()){
                        roomsList[i][j].setEmpty(false);
                        System.out.println("Reservation successful");
                        return;
                    }else {
                        System.out.println("Reservation failed, the room has been occupied");
                        return;
                    }
                }
            }
        }
    }
    public void checkOut(int outNumber){
        if (outNumber/100 >5 || outNumber%100 > 20){
            System.out.println("Room number error, please re-enter");
            return;
        }
        for (int i = 0;i < roomsList.length;i++){
            for (int j = 0;j < roomsList[i].length;j++){
                if (roomsList[i][j].getId() == outNumber){
                    System.out.println((!roomsList[i][j].isEmpty())?"Unsubscribe successfully":"This room is not subscribed. Please re verify the room number");
                   return;
                }
            }
        }
    }
    public void ergodic(){
        for (int i = 0;i < roomsList.length;i++){
            for (int j = 0;j < roomsList[i].length;j++){
                System.out.print(roomsList[i][j] + " ");
            }
            System.out.println();
        }
    }
    public void initialization(){
        this.setRoomsList(new Room[5][20]);
        for (int i = 0;i < roomsList.length;i++){
            for (int j = 0;j < roomsList[i].length;j++){
                this.roomsList[i][j] = new Room();
                this.roomsList[i][j].setId((i+1) * 100 + (j+1));
                this.roomsList[i][j].setEmpty(true);
                if (i <= 2){
                    this.roomsList[i][j].setRoomType("single room");
                }else {
                    this.roomsList[i][j].setRoomType("Double room");
                }
            }
        }
    }

    public static void main(String[] args) {
        FrontDesk huang = new FrontDesk();
        huang.initialization();
        Scanner scanner = new Scanner(System.in);
        while (true){
            System.out.println("Welcome to our hotel. What do you need to do?");
            System.out.println("1. Book a room 2. Unsubscribe a room 3. View all rooms 4. Exit the system");
            int input = scanner.nextInt();
            switch (input){
                case 1:
                    System.out.println("Please enter the reservation number");
                    int reserveNumber = scanner.nextInt();
                    huang.reservation(reserveNumber);
                    break;
                case 2:
                    System.out.println("Please enter the unsubscribe room number");
                    int outNumber = scanner.nextInt();
                    huang.checkOut(outNumber);
                    break;
                case 3:
                    huang.ergodic();
                    break;
                case 4:
                    System.exit(0);
                    break;
                default:
                    System.out.println("input error, please re-enter");
            }
        }
    }
}
class Room{
    private int id;
    private String roomType;
    private boolean isEmpty;
    //constructor

    public Room() {
    }

    public Room(int id, String roomType, boolean isEmpty) {
        this.id = id;
        this.roomType = roomType;
        this.isEmpty = isEmpty;
    }
    //setter and getter

    public int getId() {
        return id;
    }

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

    public String getRoomType() {
        return roomType;
    }

    public void setRoomType(String roomType) {
        this.roomType = roomType;
    }

    public boolean isEmpty() {
        return isEmpty;
    }

    public void setEmpty(boolean empty) {
        isEmpty = empty;
    }

    @Override
    public String toString() {
        return this.roomType + " " + this.id + " " + (this.isEmpty?"empty":"subcribed");
    }
}

本人实为java初学者,学艺不精,希望各位读者批评指正!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1013469.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号