Java项目案例:酒店前台客服管理系统
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("房间初始化完毕");
}
}
Java项目案例:酒店前台客服管理系统的更多相关文章
- java 网站用户在线和客服聊天
注:本文来源于<java 网站用户在线和客服聊天> 这是应用到项目中的一个例子. 实现原理是将信息存储到Application域里面.然后使用Struts2 Action 用json格式的 ...
- Java项目案例之--封装的实例
Java项目案例之---封装的实例 有一个专业类,有一个专业对象,专业名称:计算机科学与技术,专业编号:J001,专业年限:4,对年限添加约束,如果输入小于0,则默认为0,否则显示输入的值 有一个学生 ...
- 项目接入即时聊天客服系统(环信系统)PHP后端操作
环信工作原理: 一.由于环信没有直接的接口来主动调取本项目中的用户数据,所有用户信息必须在环信服务器上注册对应信息成为环信的用户:(这样才能当用户进入聊天时显示其基本信息,如:名称.昵称.电话.邮箱等 ...
- JAVA结合WebSocket实现简单客服聊天功能
说明:该示例只简单的实现了客服聊天功能. 1.聊天记录没有保存到数据库中,一旦服务重启,消息记录将会没有,如果需要保存到数据库中,可以扩展 2.页面样式用的网上模板,样式可以自己进行修改 3.只能由用 ...
- 大数据项目之_15_电信客服分析平台_01&02_项目背景+项目架构+项目实现+数据生产+数据采集/消费(存储)
一.项目背景二.项目架构三.项目实现3.1.数据生产3.1.1.数据结构3.1.2.编写代码3.1.3.打包测试3.2.数据采集/消费(存储)3.2.1.数据采集:采集实时产生的数据到 kafka 集 ...
- Java项目案例之---登录和修改(JSP)
登录和修改(JSP) 通过案例学习jsp的常用知识点: 1.创建一个Map集合,用于存放学生信息,将学生信息存入Map中 2.通过page将需要的包导入 3.用request.getParameter ...
- 大数据项目之_15_电信客服分析平台_03&04_数据分析
3.3.数据分析3.3.1.Mysql 表结构设计3.3.2.需求:按照不同的维度统计通话3.3.3.环境准备3.3.4.编写代码:数据分析3.3.5.运行测试3.3.6.bug 解决 3.3.数据分 ...
- Java项目案例之---计算公司员工的工资(面向对象复习)
计算公司员工的工资(面向对象复习) 某公司的雇员分为以下若干类: Employee:这是所有员工总的父类,属性:员工的姓名,员工的生日月份.方法:double getSalary(int month) ...
- Java项目案例之---常用工具类练习
常用工具类练习 1. 请根据控制台输入的特定日期格式拆分日期,如:请输入一个日期(格式如:**月**日****年),经过处理得到:****年**月**日 import java.util.Scanne ...
随机推荐
- Java 中 json字符串转换为类
使用到alibaba.fastjson包 具体实现 JSONObject jsonObject = JSONObject.parseObject(msg); SmsSenderStatus smsSe ...
- Linux学习之CentOS(四)----Linux文件属性、所有者、群组、其他组及文件权限操作简要总结
Linux文件属性.所有者.群组.其他组及文件权限操作简要总结 首先介绍一个重要的知识点:文件属性控制权限 [root@www ~]# ls -al total 156 drwxr-x--- 4 ro ...
- JPA 的 CascadeType 属性 和 FetchType属性 和 各种映射关系
代码地址:https://gitee.com/a247292980/lgp20151222 CascadeType CascadeType.PERSIST级联新增(又称级联保存): CascadeTy ...
- 【DotNet加密方式解析】-- 好文收藏
By -- 彭泽 一. DotNet加密方式解析--散列加密 笔记: 散列加密种类: 1.MD5 128位 2.SHA-1 160位 3.SHA-256 256位 4.SHA-384 384位 ...
- 在java中如何使用etcd的v2 和v3 api获取配置,并且对配置的变化进行监控
etcd 和zookeeper 很像,都可以用来做配置管理.并且etcd可以在目前流行的Kubernetes中使用. 但是etcd 提供了v2版本合v3的版本的两种api.我们现在分别来介绍一下这两个 ...
- Python List insert()方法详解
1.功能insert()函数用于将指定对象插入列表的指定位置. 2.语法list.insert(index, obj) 3.参数index: 对象obj需要插入的索引位置.obj: 插入列表中的对象. ...
- python学习之路web框架续
中间件 django 中的中间件(middleware),在django中,中间件其实就是一个类,在请求到来和结束后,django会根据自己的规则在合适的时机执行中间件中相应的方法. 在django项 ...
- [JCIP笔记](五)JDK并发包
这一节来讲一讲java.util.concurrent这个包里的一些重要的线程安全有关类. synchronized容器 synchronized容器就是把自己的内部状态封装起来,通过把每一个publ ...
- FJUT寒假作业第二周G题解快速幂
题目来源:http://210.34.193.66:8080/vj/Contest.jsp?cid=161#P6 题意:求n个数字的乘积对c取摸.主要就是有快速幂扩展到广义幂的过程. 首先题目 ...
- django+uwsgi+nginx+postgresql备忘
安装pg创建数据库xxx设置用户密码111111 apt-get install postgresql su - postgres psql create database xxx; alter us ...