java酒店系统项目面试经验_Java项目案例:酒店前台客服管理系统

这是一个使用Java编写的简单酒店房间管理系统。系统包括初始化房间、查询房间状态、办理入住和退房等功能。用户可以输入相关命令进行操作,如'in'办理入住,'out'办理退房。房间状态存储在一个二维字符串数组中,'EMPTY'表示空房间。当用户输入错误的房间号或尝试退订未入住的房间时,系统会给出相应提示。
摘要由CSDN通过智能技术生成

import java.util.Scanner;

public class HelloWorld {

public static void main(String[] args){

String [][] room = new String[12][10];

System.out.println("欢迎来到本酒店");

System.out.println("请输入要操作的命令:" +

"serach:查询房间的状态"

+"in:办理入住"+

"out:办理退房"+

"quit:退出本系统");

Scanner s = new Scanner(System.in);

//比较字符串相同---->"in. equals(command)"

while(true)

{

String command = s.next() ;

if("init".equals(command)){

init(room);

}else if("serach".equals(command)){

search(room);

}else if("quit".equals(command)){

System.out.println("欢迎再次光临本酒店!");

break ;

}else if("in".equals(command)){

in(room);

}else if("out".equals(command)){

out(room);

}else{

System.out.println("输入有误,请重新输入:");

}

}

}

//输入房间号,直接退房---->需要判断房间是否存在,是否有入住

public static void out(String[][]rooms){

System.out.println("请输入房间:");

Scanner s = new Scanner(System.in);

int roomNo = s.nextInt();

//需要把房间号转换层楼层和房间--->使其和数组的下标去对应

int floor = roomNo / 100 ; //--->根据房间号得到楼层

//房间号

int no = roomNo % 100 ; //得到楼层的房间号

if(floor < 1 || floor > 12 || no < 1 || no > 10){ //入住函数结束

System.out.println("输入的房间号有误,请输入out命令继续操作:");

return ;

}

if("EMPTY".equals(rooms[floor-1][no-1])){

System.out.println("该房间没人入住,不需要退房,请输入out命令继续操作:");

return ;

}

rooms[floor-1][no-1] = "EMPTY";

System.out.println("该房间退房成功");

}

public static void search(String[][] rooms)

{

//打印房间号

for(int i = 0 ; i < rooms.length ; i++)

{

for(int j = 0 ; j < rooms[i].length ; j++)

{

if(i <= 9 ){

System.out.print("0");

}

int roomNo = (i+1)*100 + j+1 ;

System.out.print(roomNo + "\t");

}

System.out.println();

//打印房间的状态

for(int k = 0 ; k < rooms[i].length ; k++)

{

System.out.print(rooms[i][k] + "\t");

}

System.out.println();

}

}

//可拓展,可以先列出可入住的房间,在让用户输入房间号

public static void in(String[][] rooms)

{

System.out.println("图示的房间代号为:EMPTY的为可入住房间");

//打印现有的房间信息

search(rooms);

System.out.println();

System.out.println("请输入房间号:");

Scanner s = new Scanner(System.in);

int roomNo = s.nextInt();

//需要把房间号转换层楼层和房间--->使其和数组的下标去对应

int floor = roomNo / 100 ; //--->根据房间号得到楼层

//房间号

int no = roomNo % 100 ; //得到楼层的房间号

if(floor < 1 || floor > 12 || no < 1 || no > 10){ //入住函数结束

System.out.println("输入的房间号有误,请输入in命令继续操作:");

return ;

}

//判断房间是否有人入住

if("EMPTY".equals(rooms[floor-1][no-1])){

System.out.println("请输入您的姓名:");

String name = s.next();

rooms[floor-1][no-1] = name ; //对数组进行赋值操作

System.out.println("恭喜您,入住成功!");

}else

{

System.out.println(roomNo+"已经有人入住,请输入in命令继续操作:");

return ;

}

}

public static void init(String[][] rooms)

{

for(int i = 0 ; i < rooms.length ; i++)

{

for(int j = 0 ; j < rooms[i].length ; j++)

{

rooms[i][j] = "EMPTY";

}

}

System.out.println("房间初始化完毕");

}

}

本文同步分享在 博客“Engineer-Bruce_Yang”(CSDN)。

如有侵权,请联系 support@oschina.cn 删除。

本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值