Java连载87-酒店管理系统练习、哈希表、函数
一、创建一个酒店的房间管理系统
需求:这个酒店有五层,并且1-2层是标准间,3-4层是双人间,5层是豪华间;我们需要实时的显现各个房间的使用状态,并且我们可以预定某一个房间。
package com.bjpowernode.java_learning;
import java.util.Scanner;
public class D87_1_ {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
Hotel87 h = new Hotel87();
h.print();
while (s.hasNext()) {
System.out.println("请输入您要预定的房间");
String number = s.next();
h.order(number);
h.print();
}
}
}
class Room87{
private String no;
private String type;//标准间、双人间、豪华间
private boolean isUse;//false表示空间,true表示占用
/**
* @param no
* @param type
* @param isUse
*/
Room87(String no, String type, boolean isUse) {
super();
this.no = no;
this.type = type;
this.isUse = isUse;
}
public String getNo() {
return no;
}
public void setNo(String no) {
this.no = no;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public boolean isUse() {
return isUse;
}
public void setUse(boolean isUse) {
this.isUse = isUse;
}
public String toString() {
return "{" + no +"," +(isUse?"占用":"空间") + "}";
}
}
class Hotel87 {
//房间
Room87[][] rooms;
//Constructer
Hotel87(){
//五层 每层十间
rooms = new Room87[5][10];
//赋值
//1,2标准间
//3,4双人间
//5 豪华间
for(int i=0;i<rooms.length;i++) {
for(int j=0;j<rooms[i].length;j++) {
if (i==0 || i==1) {
rooms[i][j] = new Room87((i+1)*100+j+"","标准间",false);
}
if (i==2 || i==3) {
rooms[i][j] = new Room87((i+1)*100+j+"","双人间",false);
}
if (i==4) {
rooms[i][j] = new Room87((i+1)*100+j+"","豪华间",false);
}
}
}
}
//对外提供一个打印酒店房间列表的方法
public void print() {
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(String no) {
for(int i=0;i<rooms.length;i++) {
for(int j=0;j<rooms[i].length;j++) {
if(rooms[i][j].getNo().equals(no)) {
//将该房间改为占用
rooms[i][j].setUse(true);
return;
}
}
}
}
}

二、HashSet
1.HashSet是set的一个实现类;
2.HashSet底层是一个HashMap;
3.哈希表是什么

三、源码:
D87_1_HotelManageSystem.java
D87_2_HashSet.java
https://github.com/ruigege66/Java/blob/master/D87_1_HotelManageSystem.java
https://github.com/ruigege66/Java/blob/master/D87_2_HashSet.java
2.CSDN:https://blog.csdn.net/weixin_44630050
3.博客园:https://www.cnblogs.com/ruigege0000/
4.欢迎关注微信公众号:傅里叶变换,个人公众号,仅用于学习交流,后台回复”礼包“,获取大数据学习资料

Java连载87-酒店管理系统练习、哈希表、函数的更多相关文章
- Java swing实现酒店管理系统
今天给大家提供一个由今天给大家提供一个由Java swing实现的酒店管理系统,数据库采用sqlserver,我会贴上部分代码,完整的代码请看文章最下方下载,下面看代码: 1.主框架代码: packa ...
- Java知多少(79)哈希表及其应用
哈希表也称为散列表,是用来存储群体对象的集合类结构. 什么是哈希表 数组和向量都可以存储对象,但对象的存储位置是随机的,也就是说对象本身与其存储位置之间没有必然的联系.当要查找一个对象时,只能以某种顺 ...
- java数据结构和算法09(哈希表)
树的结构说得差不多了,现在我们来说说一种数据结构叫做哈希表(hash table),哈希表有是干什么用的呢?我们知道树的操作的时间复杂度通常为O(logN),那有没有更快的数据结构?当然有,那就是哈希 ...
- 源码:Java集合源码之:哈希表(二)
要想知道一个元素是否在数组或链表中,只能从前向后挨个对比,无论是数组还是链表,其对数据的查询表现都比较无力.在的二叉排序树中,还会将数据排序以进行二分查找,将时间复杂度从O(n)降低到O(lg n). ...
- 【编程学习】浅谈哈希表及用C语言构建哈希表!
哈希表:通过key-value而直接进行访问的数据结构,不用经过关键值间的比较,从而省去了大量处理时间. 哈希函数:选择的最主要考虑因素--尽可能避免冲突的出现 构造哈希函数的原则是: ①函数本身便于 ...
- Java编写ArrayBasic制作一个简单的酒店管理系统
听老师讲了一些ArrayBasic的一些知识,让制作一个酒店管理系统,要求:显示酒店所有房间列表,预订房间.... 经过老师的指导写了一个代码,如下: import java.util.Scanner ...
- java简单学生成绩管理系统
题目要求: 一. 数据结构要求:(5 分) 1.定义 ScoreInformation 类,其中包括七个私有变量(stunumber, name, mathematicsscore, englishi ...
- Java连载69-接受输入、用数组模拟栈
一.编写一个酒店管理系统 1.直接上代码 package com.bjpowernode.java_learning; public class D69_1_ { //编写一个程序模拟酒店的管理系 ...
- 实用干货!Java开发企业级权限管理系统视频教程
全程手把手带你运用Java技术栈,打造一套基于最流行的RBAC拓展模型的,分布式的,有界面的,高灵活性,高拓展性的企业级权限管理系统.学完本课程你将可以轻松应对绝大多数企业开发中与权限管理及后台系统相 ...
随机推荐
- CAD制图系列之椭圆画法标注
今天我将做一个极轴是92,150的椭圆画法和标注方法 1.打开2014版本CAD制图,快捷键EL,回车: 2.自己随便定一个点 3.输入第一个值,也就是短轴--横轴(输入实际长度,不需要除以二)并且鼠 ...
- 自学Java第四章——《数组》
4.1 数组的相关概念和名词(了解) 1.数组(array): 一组具有相同数据类型的数据的按照一定顺序排列的集合. 把有限的几个相同类型的变量使用一个名称来进行统一管理. 2.数组名: (1)这个数 ...
- OS课程 ucore_lab2实验报告
练习零:填写已有实验 本实验依赖实验1.请把你做的实验1的代码填入本实验中代码中有"LAB1"的注释相应部分.提示:可采用diff和patch工具进行半自动的合并(merge ...
- Jmeter源码编译缺bouncycastle包
Jmeter源码下载后install没问题,运行newDrive时会包包不存在,因为下载时缺少三个包没下载成功,点击链接下载并放到lib目录下即可 下载
- WeChall_Encodings: URL (Training, Encoding)
Your task is to decode the following: %59%69%70%70%65%68%21%20%59%6F%75%72%20%55%52%4C%20%69%73%20%6 ...
- Android Studio MainActivity中的R为红色
csdn解决链接 https://blog.csdn.net/M283592338/article/details/79880413
- 青石巷-小L的爸爸
小L有一个和谐的家. 爸爸具体职业不明,在统战部工作,刚开始和妈妈在一起工作. 妈妈是个会跳舞的语文老师. 奶奶之前也是个老师. 爷爷是个建筑师. 爸爸是最有文采的一个.在小L看来,他的一言一行,一举 ...
- Shiro权限验证说明
1.简介 shiro是一个安全框架,是Apache的一个子项目.shiro提供了:认证.授权.加密.会话管理.与web集成.缓存等模块. 1.1.模块介绍 Authentication:用户身份识别, ...
- python-nmap 使用
安装 [root@localhost ~]# yum -y install nmap [root@localhost ~]# pip install python-nmap 使用 import nma ...
- 制作openstack的windows server 2012r2镜像
1. 基础环境安装 yum groupinstall Virtualization "Virtualization Client" yum install libvirt 2. 启 ...