Java编写的简单的房屋管理系统(家具的增删改查)
·
import java.util.Scanner;
public class HshHouseMangerSystem {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
//初始化厨房
HshKitchen Hshkitchen = new HshKitchen("厨房", 20);
// 添加初始几句家具
Hshkitchen.HshKitchenFurnitureList.add("冰箱");
Hshkitchen.HshKitchenFurnitureList.add("油烟机");
Hshkitchen.HshKitchenFurnitureList.add("灶火");
Hshkitchen.HshKitchenFurnitureList.add("橱柜");
//初始化客厅
HshLivingRoom Hshlivingroom = new HshLivingRoom("客厅", 80);
Hshlivingroom.HshLivingRoomFurnitureList.add("沙发");
Hshlivingroom.HshLivingRoomFurnitureList.add("电视");
Hshlivingroom.HshLivingRoomFurnitureList.add("茶几");
Hshlivingroom.HshLivingRoomFurnitureList.add("中央空调");
//初始化主卧
HshPrimaryRoom Hshprimaryroom = new HshPrimaryRoom("主卧", 30);
Hshprimaryroom.HshPrimaryRoomFurnitureList.add("大床");
Hshprimaryroom.HshPrimaryRoomFurnitureList.add("衣柜");
Hshprimaryroom.HshPrimaryRoomFurnitureList.add("梳妆台");
Hshprimaryroom.HshPrimaryRoomFurnitureList.add("书架");
//初始化次卧
HshSubordinateRoom Hshsubordinateroom = new HshSubordinateRoom("次卧", 20);
Hshsubordinateroom.HshSubordinateRoomFurnitureList.add("上下床");
Hshsubordinateroom.HshSubordinateRoomFurnitureList.add("床头柜");
Hshsubordinateroom.HshSubordinateRoomFurnitureList.add("书桌");
Hshsubordinateroom.HshSubordinateRoomFurnitureList.add("壁画");
//初始化阳台
HshBalcony Hshbalcony = new HshBalcony("阳台", 15);
Hshbalcony.HshBalconyFurnitureList.add("洗衣机");
Hshbalcony.HshBalconyFurnitureList.add("晾衣架");
while (true) {
System.out.println("欢迎使用房屋管理系统!");
System.out.println("=========================================");
System.out.println("请输入您要选择的操作:(1)查询房间 (0)退出");
if (sc.hasNextInt()) {
int choice = sc.nextInt();
switch (choice) {
case 1:
checkroom(sc, Hshkitchen, Hshlivingroom, Hshprimaryroom, Hshsubordinateroom, Hshbalcony);
break;
case 0:
System.out.println("退出成功,感谢使用!");
return; // 使用 return 结束 main 方法
default:
System.out.println("输入错误!请重新输入。");
break;
}
} else {
String invalidInput = sc.next(); // 读取非法输入(避免死循环)
System.out.println(" 错误:'" + invalidInput + "' 不是有效数字!");
}
}
}
static void checkroom(Scanner sc, HshKitchen Hshkitchen, HshLivingRoom Hshlivingroom, HshPrimaryRoom Hshprimaryroom, HshSubordinateRoom Hshsubordinateroom, HshBalcony Hshbalcony) {
while (true) {
System.out.println("请选择房间:(1)厨房 (2)客厅 (3)主卧 (4)次卧 (5)阳台 (0)返回上级");
if (sc.hasNextInt()) {
int choice = sc.nextInt();
switch (choice) {
case 0:
return; //返回主菜单
case 1://厨房
System.out.println("您进入了厨房...");
while (true) {
System.out.println("您可选择的操作:(1)查看厨房属性 (2)添加家具 (3)删除家具 (4)做饭 (0)退出");
if (sc.hasNextInt()) {
int choice1 = sc.nextInt();
switch (choice1) {
case 1:
System.out.println(Hshkitchen);
break;
case 2:
System.out.println("请输入您要添加的家具:");
String newfurniturename = sc.next();
Hshkitchen.addFurniture(newfurniturename);
break;
case 3:
System.out.println("请输入您要删除的家具:");
String oldfurniturename = sc.next();
Hshkitchen.removeFurniture(oldfurniturename);
break;
case 4:
Hshkitchen.cook();
break;
case 0:
break; // 跳出switch
default:
System.out.println("输入错误!请重新输入。");
break;
}
if (choice1 == 0) {
break; // 跳出厨房子菜单的while
}
} else {
String invalidInput = sc.next(); // 读取非法输入(避免死循环)
System.out.println(" 错误:'" + invalidInput + "' 不是有效数字!");
}
}
break; // 跳出外层switch的case 1
case 2://客厅
while (true) {
System.out.println("您可选择的操作:(1)查看客厅属性 (2)添加家具 (3)删除家具 (4)看电视 (0)退出");
if (sc.hasNextInt()) {
int choice1 = sc.nextInt();
switch (choice1) {
case 1:
System.out.println(Hshlivingroom);
break;
case 2:
System.out.println("请输入您要添加的家具:");
String newfurniturename = sc.next();
Hshlivingroom.addFurniture(newfurniturename);
break;
case 3:
System.out.println("请输入您要删除的家具:");
String oldfurniturename = sc.next();
Hshlivingroom.removeFurniture(oldfurniturename);
break;
case 4:
Hshlivingroom.watch();
break;
case 0:
break; // 跳出switch
default:
System.out.println("输入错误!请重新输入。");
break;
}
if (choice1 == 0) {
break; // 跳出客厅子菜单的while
}
} else {
String invalidInput = sc.next(); // 读取非法输入(避免死循环)
System.out.println(" 错误:'" + invalidInput + "' 不是有效数字!");
}
}
break;
case 3://主卧
System.out.println("您进入了主卧...");
while (true) {
System.out.println("您可选择的操作:(1)查看主卧属性 (2)添加家具 (3)删除家具 (4)睡觉 (0)退出");
if (sc.hasNextInt()) {
int choice1 = sc.nextInt();
switch (choice1) {
case 1:
System.out.println(Hshprimaryroom);
break;
case 2:
System.out.println("请输入您要添加的家具:");
String newfurniturename = sc.next();
Hshprimaryroom.addFurniture(newfurniturename);
break;
case 3:
System.out.println("请输入您要删除的家具:");
String oldfurniturename = sc.next();
Hshprimaryroom.removeFurniture(oldfurniturename);
break;
case 4:
Hshprimaryroom.sleep();
break;
case 0:
break; // 跳出switch
default:
System.out.println("输入错误!请重新输入。");
break;
}
if (choice1 == 0) {
break; // 跳出主卧子菜单的while
}
} else {
String invalidInput = sc.next(); // 读取非法输入(避免死循环)
System.out.println(" 错误:'" + invalidInput + "' 不是有效数字!");
}
}
break;
case 4://次卧
System.out.println("您进入了次卧...");
while (true) {
System.out.println("您可选择的操作:(1)查看主卧属性 (2)添加家具 (3)删除家具 (4)写字 (0)退出");
if (sc.hasNextInt()) {
int choice1 = sc.nextInt();
switch (choice1) {
case 1:
System.out.println(Hshsubordinateroom);
break;
case 2:
System.out.println("请输入您要添加的家具:");
String newfurniturename = sc.next();
Hshsubordinateroom.addFurniture(newfurniturename);
break;
case 3:
System.out.println("请输入您要删除的家具:");
String oldfurniturename = sc.next();
Hshsubordinateroom.removeFurniture(oldfurniturename);
break;
case 4:
Hshsubordinateroom.write();
break;
case 0:
break; // 跳出switch
default:
System.out.println("输入错误!请重新输入。");
break;
}
if (choice1 == 0) {
break; // 跳出次卧子菜单的while
}
} else {
String invalidInput = sc.next(); // 读取非法输入(避免死循环)
System.out.println(" 错误:'" + invalidInput + "' 不是有效数字!");
}
}
break;
case 5:
System.out.println("您进入了阳台...");
while (true) {
System.out.println("您可选择的操作:(1)查看主卧属性 (2)添加家具 (3)删除家具 (4)看风景 (0)退出");
if (sc.hasNextInt()) {
int choice1 = sc.nextInt();
switch (choice1) {
case 1:
System.out.println(Hshbalcony);
break;
case 2:
System.out.println("请输入您要添加的家具:");
String newfurniturename = sc.next();
Hshbalcony.addFurniture(newfurniturename);
break;
case 3:
System.out.println("请输入您要删除的家具:");
String oldfurniturename = sc.next();
Hshbalcony.removeFurniture(oldfurniturename);
break;
case 4:
Hshbalcony.sightseeing();
break;
case 0:
break; // 跳出switch
default:
System.out.println("输入错误!请重新输入。");
break;
}
if (choice1 == 0) {
break; // 跳出阳台子菜单的while
}
} else {
String invalidInput = sc.next(); // 读取非法输入(避免死循环)
System.out.println(" 错误:'" + invalidInput + "' 不是有效数字!");
}
}
break;
default:
System.out.println("输入错误!");
break;
}
} else {
String invalidInput = sc.next(); // 读取非法输入(避免死循环)
System.out.println(" 错误:'" + invalidInput + "' 不是有效数字!");
}
}
}
}
import java.util.ArrayList;
import java.util.List;
public class HshBalcony extends HshRoom {
protected List<String> HshBalconyFurnitureList;
public HshBalcony(String name, double area) {
super(name, area);
this.HshBalconyFurnitureList = new ArrayList<>();
}
// 重写添加家具方法
@Override
public void addFurniture(String HshBalconyFurnitureName) {
this.HshBalconyFurnitureList.add(HshBalconyFurnitureName);
System.out.println("成功添加家具:" + HshBalconyFurnitureName);
}
// 重写删除家具方法
@Override
public void removeFurniture(String HshBalconyFurnitureName) {
if (HshBalconyFurnitureList.contains(HshBalconyFurnitureName)) {
this.HshBalconyFurnitureList.remove(HshBalconyFurnitureName);
System.out.println("成功删除家具:" + HshBalconyFurnitureName);
} else {
System.out.println("操作不合法," + getName() + "中无" + HshBalconyFurnitureName + "!");
}
}
//重写展示家具方法
@Override
public String getFurnitureInfo() {
if (HshBalconyFurnitureList.isEmpty()) {
return "无";
}
return HshBalconyFurnitureList.toString();
}
@Override
public String toString() {
return getName() + ":" + getArea() + "平方米\n" + "家具:" + this.getFurnitureInfo();
}
// 普通方法看风景
public void sightseeing() {
System.out.println("开始看风景");
}
}
import java.util.ArrayList;
import java.util.List;
public class HshSubordinateRoom extends HshRoom {
protected List<String> HshSubordinateRoomFurnitureList;
public HshSubordinateRoom(String name, double area) {
super(name, area);
this.HshSubordinateRoomFurnitureList = new ArrayList<>();
}
// 重写添加家具方法
@Override
public void addFurniture(String HshSubordinateRoomFurnitureName) {
this.HshSubordinateRoomFurnitureList.add(HshSubordinateRoomFurnitureName);
System.out.println("成功添加家具:" + HshSubordinateRoomFurnitureName);
}
// 重写删除家具方法
@Override
public void removeFurniture(String HshSubordinateRoomFurnitureName) {
if (HshSubordinateRoomFurnitureList.contains(HshSubordinateRoomFurnitureName)) {
this.HshSubordinateRoomFurnitureList.remove(HshSubordinateRoomFurnitureName);
System.out.println("成功删除家具:" + HshSubordinateRoomFurnitureName);
} else {
System.out.println("操作不合法," + getName() + "中无" + HshSubordinateRoomFurnitureName + "!");
}
}
//重写展示家具方法
@Override
public String getFurnitureInfo() {
if (HshSubordinateRoomFurnitureList.isEmpty()) {
return "无";
}
return HshSubordinateRoomFurnitureList.toString();
}
@Override
public String toString() {
return getName() + ":" + getArea() + "平方米\n" + "家具:" + this.getFurnitureInfo();
}
// 普通方法写字
public void write() {
System.out.println("开始写字");
}
}
import java.util.ArrayList;
import java.util.List;
public class HshLivingRoom extends HshRoom {
protected List<String> HshLivingRoomFurnitureList;
public HshLivingRoom(String name, double area) {
super(name, area);
this.HshLivingRoomFurnitureList = new ArrayList<>();
}
// 重写添加家具方法
@Override
public void addFurniture(String HshLivingRoomFurnitureName) {
this.HshLivingRoomFurnitureList.add(HshLivingRoomFurnitureName);
System.out.println("成功添加家具:" + HshLivingRoomFurnitureName);
}
// 重写删除家具方法
@Override
public void removeFurniture(String HshLivingRoomFurnitureName) {
if (HshLivingRoomFurnitureList.contains(HshLivingRoomFurnitureName)) {
this.HshLivingRoomFurnitureList.remove(HshLivingRoomFurnitureName);
System.out.println("成功删除家具:" + HshLivingRoomFurnitureName);
} else {
System.out.println("操作不合法," + getName() + "中无" + HshLivingRoomFurnitureName + "!");
}
}
//重写展示家具方法
@Override
public String getFurnitureInfo() {
if (HshLivingRoomFurnitureList.isEmpty()) {
return "无";
}
return HshLivingRoomFurnitureList.toString();
}
@Override
public String toString() {
return getName() + ":" + getArea() + "平方米\n" + "家具:" + this.getFurnitureInfo();
}
// 普通方法看电视
public void watch() {
System.out.println("开始看电视");
}
}
import java.util.ArrayList;
import java.util.List;
public class HshKitchen extends HshRoom {
protected List<String> HshKitchenFurnitureList;
public HshKitchen(String name, double area) {
super(name, area);
this.HshKitchenFurnitureList = new ArrayList<>();
}
// 重写添加家具方法
@Override
public void addFurniture(String HshKitctionFurnitureName) {
this.HshKitchenFurnitureList.add(HshKitctionFurnitureName);
System.out.println("成功添加家具:" + HshKitctionFurnitureName);
}
// 重写删除家具方法
@Override
public void removeFurniture(String HshKitctionFurnitureName) {
if (HshKitchenFurnitureList.contains(HshKitctionFurnitureName)) {
this.HshKitchenFurnitureList.remove(HshKitctionFurnitureName);
System.out.println("成功删除家具:" + HshKitctionFurnitureName);
} else {
System.out.println("操作不合法," + getName() + "中无" + HshKitctionFurnitureName + "!");
}
}
//重写展示家具方法
@Override
public String getFurnitureInfo() {
if (HshKitchenFurnitureList.isEmpty()) {
return "无";
}
return HshKitchenFurnitureList.toString();
}
@Override
public String toString() {
return getName() + ":" + getArea() + "平方米\n" + "家具:" + this.getFurnitureInfo();
}
// 普通方法做饭
public void cook() {
System.out.println("开始做饭");
}
}
import java.util.ArrayList;
import java.util.List;
public class HshPrimaryRoom extends HshRoom {
protected List<String> HshPrimaryRoomFurnitureList;
public HshPrimaryRoom(String name, double area) {
super(name, area);
this.HshPrimaryRoomFurnitureList = new ArrayList<>();
}
// 重写添加家具方法
@Override
public void addFurniture(String HshPrimaryRoomFurnitureName) {
this.HshPrimaryRoomFurnitureList.add(HshPrimaryRoomFurnitureName);
System.out.println("成功添加家具:" + HshPrimaryRoomFurnitureName);
}
// 重写删除家具方法
@Override
public void removeFurniture(String HshPrimaryRoomFurnitureName) {
if (HshPrimaryRoomFurnitureList.contains(HshPrimaryRoomFurnitureName)) {
this.HshPrimaryRoomFurnitureList.remove(HshPrimaryRoomFurnitureName);
System.out.println("成功删除家具:" + HshPrimaryRoomFurnitureName);
} else {
System.out.println("操作不合法," + getName() + "中无" + HshPrimaryRoomFurnitureName + "!");
}
}
//重写展示家具方法
@Override
public String getFurnitureInfo() {
if (HshPrimaryRoomFurnitureList.isEmpty()) {
return "无";
}
return HshPrimaryRoomFurnitureList.toString();
}
@Override
public String toString() {
return getName() + ":" + getArea() + "平方米\n" + "家具:" + this.getFurnitureInfo();
}
// 普通方法睡觉
public void sleep() {
System.out.println("开始睡觉");
}
}
import java.util.ArrayList;
import java.util.List;
public abstract class HshRoom {
private String name;
private double area;
// 使用 List 来动态存储家具
protected List<String> furnitureList;
public HshRoom(String name, double area) {
this.name = name;
this.area = area;
this.furnitureList = new ArrayList<>();
}
// 添加家具的方法
public abstract void addFurniture(String furnitureName);
// 删除家具的方法
public abstract void removeFurniture(String furnitureName);
// 获取家具列表用于展示
public abstract String getFurnitureInfo();
public String getName() {
return name;
}
public double getArea() {
return area;
}
public void setName(String name) {
this.name = name;
}
public void setArea(double area) {
this.area = area;
}
}
更多推荐


所有评论(0)