房租出租系统
目录
项目需求说明
项目功能界面(HouseView.java)
主菜单
编辑
房屋列表
新增房屋
查找房屋
删除房屋
修改房屋
退出
项目业务层(HouseService.java)
项目数据层(House.java)
总结
项目需求说明
实现基于文本界面的《房屋出租软件》。
能够实现对房屋信息的添加、修改和删除(用数组实现),并能够打印房屋明细表。
项目功能界面(HouseView.java)
主菜单
代码如下:
public void mainMenu() {do {System.out.println("---------------房屋出租系统--------------");System.out.println("\t1 新 增 房 源");System.out.println("\t2 查 找 房 屋");System.out.println("\t3 删 除 房 屋");System.out.println("\t4 修 改 房 屋 信 息");System.out.println("\t5 房 屋 列 表");System.out.println("\t6 退 出");System.out.print("请输入你的选择: ");key = scanner.next();switch (key) {case "1"://新增房源addHouse();break;case "2"://查找房源findHouse();break;case "3"://删除房源delHouse();break;case "4":changeHouse();//修改房屋信息break;case "5":listHouse();//房屋列表break;case "6"://退出exit();break;default:System.out.println("你的输入有误,请重新输入!");}} while (bool);}
房屋列表

代码如下
public void listHouse() {System.out.println("----------------房屋列表------------------");System.out.println("编号\t\t房主\t\t电话\t\t地址\t\t月租\t\t状态");for (int i = 0; i < houses.length; i++) {if (houses[i] != null)System.out.println(houses[i]);}System.out.println("---------------房屋列表完成---------------");}
新增房屋

此时查看房屋列表已添加成功

代码如下
public void addHouse() {System.out.println("-----------------添加房屋-----------------");System.out.print("姓名:");String name = scanner.next();System.out.print("电话:");String tel = scanner.next();System.out.print("地址:");String address = scanner.next();System.out.print("月租:");int rent = scanner.nextInt();System.out.print("状态:");String state = scanner.next();House house = new House(0, name, tel, address, rent, state);if (houseService.add(house)) {System.out.println("----------------添加房屋成功-----------------");} else {System.out.println("房屋已满!");}}
查找房屋

代码如下
public void findHouse() {System.out.println("-----------------查找房屋-----------------");System.out.print("请输入你要查找的id:");int id = scanner.nextInt();int i = houseService.find(id);if (i != -1) {System.out.println(houses[i]);} else {System.out.println("不存在这个id的房屋!");}}
删除房屋

此时查看房屋列表已成功删除

代码如下
public void delHouse() {System.out.println("-----------------删除房屋-----------------");System.out.print("请选择待删除的房屋编号(-1退出):");int choice = scanner.nextInt();if (choice == -1) {System.out.println("-----------------退出删除房屋-----------------");return;}boolean flag;do {flag = false;System.out.println("确认是否删除(Y/N):");String conform = scanner.next();if (conform.equals("Y") || conform.equals("y")) {if (houseService.del(choice)) {System.out.println("-----------------删除房屋成功-----------------");} else {System.out.println("---------------没有该房屋,删除失败-------------");}} else if (conform.equals("N") || conform.equals("n")) {System.out.println("-----------------退出删除房屋-----------------");} else {System.out.println("您的输入有误请重新输入(Y/N)");flag = true;}} while (flag);}
修改房屋

注:若直接回车则表示对原有信息不做处理
此时查看房屋列表已成功修改

代码如下
public void changeHouse() {System.out.println("-----------------修改房屋-----------------");System.out.print("请选择待修改的房屋编号(-1退出):");int choice = scanner.nextInt();scanner.nextLine();if (choice == -1) {System.out.println("-----------------退出修改房屋-----------------");return;}int index = houseService.find(choice);if (index == -1) {System.out.println("不存在该编号的房屋");} else {//如果输入回车,则对原有信息不做修改。System.out.print("姓名(" + houses[index].getName() + "):");String name = scanner.nextLine();if (name.length() != 0) {houses[index].setName(name);}System.out.print("电话(" + houses[index].getTel() + "):");String tel = scanner.nextLine();if (tel.length() != 0) {houses[index].setTel(tel);}System.out.print("地址(" + houses[index].getAddress() + "):");String address = scanner.nextLine();if (address.length() != 0) {houses[index].setAddress(address);}System.out.print("租金(" + houses[index].getRent() + "):");String rent = scanner.nextLine();// int rent = scanner.nextInt();if (rent.length() != 0) {houses[index].setRent(Integer.parseInt(rent));}System.out.print("状态(" + houses[index].getState() + "):");String state = scanner.nextLine();if (state.length() != 0) {houses[index].setState(state);}}}
退出

代码如下
public void exit() {while (true) {System.out.println("你确定要退出吗?y/n");String think = scanner.next();if (think.equals("y")) {System.out.println("---你已安全退出房屋出租系统---");bool = false;break;} else if (think.equals("n")) {break;}}}
项目业务层(HouseService.java)
代码如下
package com.lww.houserent.serive;import com.lww.houserent.domain.House;/*** 对房屋信息的各种操作,如增删改查*/public class HouseService {private House[] houses;//房屋数量private int houseNum = 1;//房屋编号private int id = 2;public HouseService(int size) {houses = new House[size];houses[0] = new House(1, "jack", "123", "China", 500, "未出租");}public boolean del(int choice) {if(choice == houses[houseNum - 1].getId()){houses[houseNum - 1] = null;houseNum--;return true;}for (int i = 0; i < houseNum - 1; i++) {if (choice == houses[i].getId()) {houses[i] = houses[i + 1];houses[houseNum -1] = null;houseNum--;return true;}}return false;}public int find(int findId) {for (int i = 0; i < houseNum; i++) {if (findId == houses[i].getId()) {return i;}}return -1;}public boolean add(House newHouse) {if (houseNum == houses.length) {return false;}houses[houseNum] = newHouse;houseNum++;newHouse.setId(id);id++;return true;}public House[] list() {return houses;}}
项目数据层(House.java)
代码如下
package com.lww.houserent.domain;/*** 房屋信息House类包括* 编号 房主 电话 地址 月租 状态*/
public class House {private int id;private String name;private String tel;private String address;private int rent;private String state;@Overridepublic String toString() {return id +"\t\t" + name +"\t" + tel +"\t\t" + address +"\t" + rent +"\t\t" + state;}public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getTel() {return tel;}public void setTel(String tel) {this.tel = tel;}public String getAddress() {return address;}public void setAddress(String address) {this.address = address;}public int getRent() {return rent;}public void setRent(int rent) {this.rent = rent;}public String getState() {return state;}public void setState(String state) {this.state = state;}public House(int id, String name, String tel, String address, int rent, String state) {this.id = id;this.name = name;this.tel = tel;this.address = address;this.rent = rent;this.state = state;}
}
总结
基本实现过程如下:
1 创建House房屋类存储房屋编号,房主,电话,地址,月租,状态等信息
2 创建House[]数组存储房屋列表的相关信息
3 通过对House[]数组的各种操作实现增删改查
房屋出租系统还是一个比较简单的系统,没有连接数据库,只是通过数组来实现对房屋信息的一系列操作,且没有房屋数量在创建房屋对象的时候就已确定,可以通过数组扩容等方式改进。
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

