扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
找个简单的:
网站建设哪家好,找成都创新互联!专注于网页设计、网站建设、微信开发、微信小程序、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了保山免费建站欢迎大家使用!
import java.util.Scanner;
public class a1{
public static void main(String[] args){
Scanner s = new Scanner(System.in);//接受客户键盘输入,在命令行中,回车结束
System.out.println( "酒店管理系统" );
Hotel h = new Hotel();
System.out.println( h );
h.print();
while (true){
System.out.println( "请输入房间编号" );
//声明变量,用于接受控制台输入数据
String no = s.next();
//预订房间
h.order(no);
h.print();
}
}
}
class Room{
//房间号
private String no;
//房间类型
private String type;
//是否被占用
private boolean isUse;
public Room(){//默认调用
super();
}
public Room(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 + "," + type + "," + (isUse?"占用":"空闲") + "]";
}
}
class Hotel{
Room rooms[][];
public Hotel(){
rooms = new Room[5][4];//旅馆有五层,每层四个房间
for(int i=0; i rooms.length; ++i){//外层for循环是循环层,内存循环是循环的每层的房间
for(int j=0; j rooms[i].length; ++j){
if (i == 0 || i == 1) {
//后面加个空字符串,是自动数据类型转换,这样前面的数字会自动变成数字型字符串;
rooms[i][j] = new Room((i+1)*100+j+1 +"" , "标准间",false);
}
if (i == 2 || i == 3) {
rooms[i][j] = new Room((i+1)*100+j+1 +"" , "双人间",false);
}
if (i == 4) {
rooms[i][j] = new Room((i+1)*100+j+1 +"" , "豪华间",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)) {
//把对象的成员数据封装,通过成员方法访问
//1 成员变量的访问方式rooms[i][j].no;
//2 成员方法的访问方式
rooms[i][j].setUse(true);
return;
}
}
}
}
}
带数据库的就算了
//1.定义抽象类Room
public abstract class Room {
//定义抽象方法
public void roomCost(int days){ };
}
//2.定义子类Single
public class Single extends Room {
private String bedNo;//定义属性床号
private Boolean isAirConditioning=true;//定义是否为空调房
private double roomPrice = 100.00;//定义非空调房基准价位属性
//计算房价方法
public void roomCost(int days){
//当是空调房进入if语句体,非空调房进入else语句体。
if(isAirConditioning){
roomPrice += days*10.00;
System.out.println("您的房间号为:"+getBedNo()+"号为空调房您的住宿费用如下:");
System.out.print(roomPrice);
System.out.print("人民币");
}else{
System.out.println("您的房间号为:"+getBedNo()+"号住宿费用如下:");
System.out.print(roomPrice);
System.out.print("人民币");
}
}
public String getBedNo() {
return bedNo;
}
public void setBedNo(String bedNo) {
this.bedNo = bedNo;
}
public double getRoomPrice() {
return roomPrice;
}
public void setRoomPrice(double roomPrice) {
this.roomPrice = roomPrice;
}
public static void main(String[] args) {
Single sg = new Single();
//给的房间为空调房
sg.isAirConditioning=true;
//给房间号值
sg.bedNo = "3102";
//执行房间计费方法
sg.roomCost(3);
}
}
酒店类
package fdsa;
public class Hotel {
private String hotelID;
private String hotelName;
private String hoteladdess;
public String getHotelID() {
return hotelID;
}
public void setHotelID(String hotelID) {
this.hotelID = hotelID;
}
public String getHotelName() {
return hotelName;
}
public void setHotelName(String hotelName) {
this.hotelName = hotelName;
}
public String getHoteladdess() {
return hoteladdess;
}
public void setHoteladdess(String hoteladdess) {
this.hoteladdess = hoteladdess;
}
public String getHotelPhone() {
return hotelPhone;
}
public void setHotelPhone(String hotelPhone) {
this.hotelPhone = hotelPhone;
}
private String hotelPhone;
}
客户类
public class Client{
private String clientName;
private String clientID;
public String getClientName() {
return clientName;
}
public void setClientName(String clientName) {
this.clientName = clientName;
}
public String getClientID() {
return clientID;
}
public void setClientID(String clientID) {
this.clientID = clientID;
}
}
房间类
public class Room{
private String roomID;
private Hotel hotelID;
public String getRoomID() {
return roomID;
}
public void setRoomID(String roomID) {
this.roomID = roomID;
}
public Hotel getHotelID() {
return hotelID;
}
public void setHotelID(Hotel hotelID) {
this.hotelID = hotelID;
}
public String getRoomAmount() {
return roomAmount;
}
public void setRoomAmount(String roomAmount) {
this.roomAmount = roomAmount;
}
private String roomAmount;
}
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("是否是会员?y/n");
String H = input.next();
System.out.println("请输入入住日期:");
System.out.println("例如2009-03-16");
String in = input.next();
System.out.println("请输离开日期:");
System.out.println("例如2009-03-16");
String out = input.next();
//String in = s.substring(5,15);
//String out = s.substring(15,26);
//System.out.println(in+" "+out);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar c1 = Calendar.getInstance();
Calendar c2 = Calendar.getInstance();
try {
c1.setTime(sdf.parse(in));
c2.setTime(sdf.parse(out));
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
long time1 = c1.getTimeInMillis();
long time2 = c2.getTimeInMillis();
long tian = (time2-time1)/(1000*24*3600);
long tian1 = tian;
System.out.println("tian "+tian);
int week1 = c1.get(Calendar.DAY_OF_WEEK)-1;
//System.out.println(week1);
//int week2 = c2.get(Calendar.DAY_OF_WEEK)-1;
//System.out.println(week2);
int count = 0;
while(tian10){
if(week1 == 6 || week1==0){
count++;
}
if(week1==6){
week1 = 0;
week1--;
}
tian1--;
week1++;
}
System.out.println("count "+count);
long rujia;
long qitian;
long hanting;
if(H.equals("y")){
rujia = (tian-count)*80+count*80;
System.out.println("tian "+tian);
qitian = (tian-count)*110+count*50;
hanting = (tian-count)*100+count*40;
}else{
rujia = (tian-count)*110+count*90;
qitian = (tian-count)*160+count*60;
hanting = (tian-count)*220+count*150;
}
System.out.println("tian " + tian);
System.out.println("rujia "+rujia);
System.out.println("hanting "+hanting);
System.out.println("qitian "+qitian);
if(rujiaqitian rujiahanting){
System.out.println("如家");
}else if(qitianrujia qitianhanting){
System.out.println("七天");
}else if(hantingrujia hantingqitian){
System.out.println("汉庭");
}else if(hanting==rujia || hanting==qitian){
System.out.println("汉庭");
}else if(qitian==rujia qitianhanting){
System.out.println("七天");
}
}
我没怎么测试 自己测测吧 还有一些约束用户输入啥的 严谨性什么的
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流