房屋出租系统
1.主界面
2.新增房源
3.查找房源
4.删除房源
5.修改房源
6.房屋列表
7.退出
8.软件包 类分层如下
9.代码如下
package com.wang.houserent;
import com.wang.houserent.view.HouseView;
public class HouseRentApp {
public static void main(String[] args) {
HouseView w = new HouseView();
w.mainMenu();
System.out.println("===你退出房屋出租系统===");
}
}
package com.wang.houserent.domain;
public class House {
private int id;
private String name;
private String phone;
private String address;
private int rent;
private System state;
public House(int id, String name, String phone, String address, int rent, System state) {
this.id = id;
this.name = name;
this.phone = phone;
this.address = address;
this.rent = rent;
this.state = 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 getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
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 System getState() {
return state;
}
public void setState(System state) {
this.state = state;
}
@Override
public String toString() {
return id +
"\t" + name +
"\t" + phone +
"\t" + address +
"\t" + rent +
"\t" + state ;
}
}
package com.wang.houserent.view;
import com.wang.houserent.domain.House;
import com.wang.houserent.service.HouseService;
import sun.text.normalizer.Utility;
public class HouseView {
private boolean loop = true;
private char key = ' ';
private HouseService houseservice = new HouseService(10);
public void update(){
System.out.println("==========修改房屋信息==========");
System.out.println("请选择待修改房屋的信息(-1表示退出)");
int updateId = Utility.readInt();
if(updateId == -1){
System.out.println("==========你放弃修改房屋信息==========");
return;
}
House house = houseservice.findById(updateId);
if(house == null){
System.out.println("==========修改房屋信息编号不存在==========");
return;;
}
System.out.println("姓名("+house.getName()+ " ):");
String name = Utility.readString(8,"");
if(!"".equals(name)){
house.setName(name);
}
System.out.println("电话("+house.getPhone()+ " ):");
String phone= Utility.readString(12);
if(!"".equals(phone)){
house.setPhone(phone);
}
System.out.println("地址("+house.getAddress()+ " ):");
String address = Utility.readInt(-1);
if(!"".equals(address)){
house.setName(address);
}
System.out.println("租金("+house.getRent()+ " ):");
String rent = Utility.readInt(-1);
if(rent!=-1){
house.setName(rent);
}
System.out.println("状态("+house.getState()+ " ):");
String state = Utility.readString(3,"");
if(!"".equals(state)){
house.setName(state);
}
System.out.println("==========修改房屋信息成功成功!==========");
}
public void findHouse(){
System.out.println("==========查找房屋信息==========")
System.out.println("请输入要查找的id:");
int findId = Utility.readInt();
House house = houseservice.findById(findId);
if(house+=null){
System.out.println(house);
}else{
System.out.println("==========查找房屋信息id不存在==========");
}
}
public void exit(){
char c = Utility.readConfirmSelection();
if(c=='y'){
loop = false;
}
}
public void delHouse(){
System.out.println("==========删除房屋信息==========");
System.out.print("请输入待删除房屋的编号(-1)");
int delId = Utility.readInt();
if(delId == -1){
System.out.println("==========放弃删除房屋信息==========");
return;
}
char choice = Utility.readConfirmSelection();
if(choice=='y'){
if(houseservice.del(delId)){
System.out.println("==========删除房屋信息成功==========");
}else{
System.out.println("==========房屋编号不存在 删除失败==========");
}
}else{
System.out.println("==========放弃删除房屋信息==========");
}
}
public void addHouse(){
System.out.println("==========添加房屋==========");
System.out.println("姓名:");
String name = Utility.readString(8);
System.out.println("电话:");
String phone= Utility.readString(12);
System.out.println("地址:");
String address = Utility.readString(16);
System.out.println("月租:");
int rent = Utility.readInt(2);
System.out.println("状态:");
String state = Utility.readString(3);
House house = new House(0,name,phone,address,rent,state);
if(houseservice.add(newHouse)){
System.out.println("==========添加房屋信息==========");
}else{
System.out.println("==========添加房屋失败==========");
}
}
public void listHouse(){
System.out.println("==========房屋列表==========");
System.out.println("编号\t\t房主\t\t电话\t\t地址\t\t月租\t\t状态(未出租/已出租)");
House [] houses = houseservice.list();
for (int i = 0 ; i<houses.length;i++){
if(houses[i] == null ){
break;
}
System.out.println(houses[i]);
}
System.out.println("==========房屋列表显示完毕==========" +
"");
}
public void mainMenu(){
do{
System.out.println("=============房屋出租系统菜单=============");
System.out.println("\t\t\t1 新 增 房 源");
System.out.println("\t\t\t2 查 找 房 源");
System.out.println("\t\t\t3 删 除 房 屋 信 息");
System.out.println("\t\t\t4 修 改 房 屋 信 息");
System.out.println("\t\t\t5 房 屋 列 表");
System.out.println("\t\t\t6 退 出");
System.out.println("请输入你的选择(1~6): ");
key = Utility.readChar();
switch (key){
case '1':
addHouse();
break;
case '2':
findHouse();
break;
case '3':
delHouse();
break;
case '4':
System.out.println("修 改");
break;
case '5':
listHouse();
break;
case '6':
exit();
break;
}
}while(loop);
}
}
package com.wang.houserent.service;
import com.wang.houserent.domain.House;
public class HouseService {
private House[] houses;
private int houseNums = 1;
private int idCounter = 1;
public HouseService (int size){
houses = new House[size];
houses[0] = new House(1,"wang","112","安徽",2000,"未出租");
}
public House findById(int findId){
for(int i =0;i<houseNums;i++){
if(findId == houses[i].getId()){
return houses[i];
}
}
return null;
}
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] = null;
return true;
}
public boolean add(House newHouse){
if(houseNums>=houses.length){
System.out.println("数量已满 不能继续添加");
return false;
}
houses[houseNums++] = newHouse;
idCounter++;
newHouse.setId(idCounter);
return true;
}
public House[] list(){
return houses;
}
}