Test函数
public class Test { public static void main(String[] args) { JiuDian jd = new JiuDian(); jd.Build(); HotelReception hr = new HotelReception(); hr.jiemian(jd); } }
前台函数
import java.util.Scanner; public class HotelReception { public void jiemian(JiuDian jd){ int a=9; while (a!=0){ System.out.println("--------------------"); System.out.println("|------1.登录-------|"); System.out.println("|------0.退出-------|"); System.out.println("--------------------"); Scanner choose = new Scanner(System.in); System.out.println("请输入你的选择"); switch (a=choose.nextInt()) { case 1: log_in(jd); break; case 0: break; default: System.out.println("无效输出,请重新输入!"); } } } public void log_in(JiuDian jd){ Scanner scanner=new Scanner(System.in); System.out.println("请输入名字:"); String name= scanner.next(); System.out.println("请输入密码:"); String password= scanner.next(); if("tangrunxuan".equals(name) && "123456".equals(password)) { jd.hotelPlatform(); }else { System.out.println("用户不存在或密码错误"); } } }
酒店类
import java.util.Scanner; public class JiuDian { Room[][] rooms =new Room[5][5]; public JiuDian() { } public JiuDian(Room[][] rooms) { this.rooms = rooms; } public void checkRoom(){ for (int i = rooms.length-1; i >=0 ; i--) { for (int j = 0; j <rooms[i].length; j++) { System.out.print(rooms[i][j]); } System.out.println(); } } public void Reservation(){ int roomNumber; System.out.println("请输入房间号"); Scanner scanner = new Scanner(System.in); roomNumber = scanner.nextInt(); int x = roomNumber/100; int y = roomNumber%100; if((x>=1 && x<=5) && (y>=1 && y<=5)){ if((rooms[x-1][y-1].getRooming())){ rooms[x-1][y-1].setRooming(false); System.out.println("房间已定,欢迎领包入住"); }else { System.out.println("房间已被预定,不能重复预定"); } }else { System.out.println("查无该房间,请重新输入"); } } public void check_out(){ int roomNumber; System.out.println("请输入房间号"); Scanner scanner = new Scanner(System.in); roomNumber = scanner.nextInt(); int x = roomNumber/100; int y = roomNumber%100; if((x>=1 && x<=5) && (y>=1 && y<=5)){ if(!(rooms[x-1][y-1].getRooming())){ rooms[x-1][y-1].setRooming(true); System.out.println("房间已退,欢迎下次预定!"); }else { System.out.println("房间未被预定,不能退房"); } }else{ System.out.println("查无该房间,请重新输入"); } } public void Build(){ int i,j; for (i = 0; i < rooms.length; i++) { for (j = 0; j < rooms[i].length; j++) { if(i==0){ rooms[i][j] = new Room((i+1)*100+(j+1),"标准房",true); } else if (i<=2) { rooms[i][j] = new Room((i+1)*100+(j+1),"双人房",true); }else{ rooms[i][j] = new Room((i+1)*100+(j+1),"豪华房",true); } } } } public void hotelPlatform(){ int a = 9; while (a!=0) { System.out.println("--------------------"); System.out.println("|------1.订房-------|"); System.out.println("|------2.退房-------|"); System.out.println("|------3.查房-------|"); System.out.println("|------0.退出-------|"); System.out.println("--------------------"); Scanner choose = new Scanner(System.in); System.out.println("请输入你的选择"); switch (a=choose.nextInt()) { case 1: Reservation(); break; case 2: check_out(); break; case 3: checkRoom(); break; case 0: break; default: System.out.println("无效输出,请重新输入!"); } } } }
房间类
public class Room { private int roomNumber; private String roomType; private boolean rooming; public Room() { } public Room(int roomNumber, String roomType, boolean rooming) { this.roomNumber = roomNumber; this.roomType = roomType; this.rooming = rooming; } public int getRoomNumber() { return roomNumber; } public String getRoomType() { return roomType; } public boolean getRooming() { return rooming; } public void setRoomNumber(int roomNumber) { this.roomNumber = roomNumber; } public void setRoomType(String roomType) { this.roomType = roomType; } public void setRooming(boolean rooming) { this.rooming = rooming; } public void equals(){ } public String toString(){ return "["+getRoomNumber()+","+getRoomType()+","+getRooming()+"]"; } public boolean equals(Object obj) { if(obj==null || !(obj instanceof Room)) return false; if(this == obj )return true; Room room = (Room) obj; return this.getRoomNumber() == room.getRoomNumber(); } }