最近学习了一下房屋出租系统
java实在太神奇啦
业务层:
public class HouseService {
private House[] houses;
private int houseNums = 1;//记录当前有多少个房屋信息
private int idCounter = 1;
public HouseService(int size){
houses = new House[size];
//为了配合测试列表信息,这里初始化一个House对象
houses[0] = new House(1,"jack","112","海淀区",2500,"未出租");
}
public boolean add(House newHouse) {
//判断是否还可以继续添加(我们暂时不考虑数组扩容的问题) => 能否自己加入数组扩容机制(~~)
if(houseNums == houses.length) {//不能再添加
System.out.println("数组已满,不能再添加了...");
return false;
}
//把newHouse对象加入到,新增加了一个房屋
houses[houseNums++] = newHouse;
//我们程序员需要设计一个id自增长的机制, 然后更新newHouse的id
newHouse.setId(++idCounter);
return true;
}
public House[] list(){
return houses;
}
public boolean del(int delId){
int index = -1;
for(int i = 0;i < houseNums;i++){
if(delId == houses[i].getId()){
index = i;
}
}
if(index == -1){
return false;
}
for(int i = index;i < houseNums - 1;i++){
houses[i] = houses[i+1];
}
houses[houseNums - 1] = null;
houseNums--;
return true;
}
public House findById(int findId){
for(int i = 0;i < houseNums;i++){
if(findId == houses[i].getId()){
return houses[i];
}
}
return null;
}
}
界面层
//显示系统菜单
public class HouseView {
boolean loop = true;
private char key = ' ';
private HouseService houseService = new HouseService(10);//设置数组大小为10
public void mainMenu(){
do{
System.out.println("====================房屋出租系统====================");
System.out.println("\t\t\t\t\t1 新增房源");
System.out.println("\t\t\t\t\t2 查找房屋");
System.out.println("\t\t\t\t\t3 删除房屋");
System.out.println("\t\t\t\t\t4 修改房屋信息");
System.out.println("\t\t\t\t\t5 房屋列表");
System.out.println("\t\t\t\t\t6 退 出");
System.out.println("===================================================");
System.out.println("请输入您的选择(1-6):");
key = Utility.readChar();
switch(key){
case '1' :
addHouse();
break;
case '2' :
findHouse();
break;
case '3' :
delHouse();
break;
case '4' :
updateHouse();
break;
case '5' :
listHouses();
break;
case