房屋出租系统(初级)

前言

本项目是根据【零基础 快速学Java】韩顺平 零基础30天学会Java_哔哩哔哩_bilibili 课程进行的。项目的主要目的是巩固一下以前学习的 Java基础 知识。

需求

​ 实现基于文本界面的房屋出租系统,能够实现对房屋信息的添加,修改和删除(用数组实现),并且能够打印房屋明细表。

界面

  • 主菜单
    1. 新 增 房 源
    2. 查 找 房 屋
    3. 删 除 房 屋
    4. 修 改 房 屋 信 息
    5. 房 屋 列 表
    6. 退 出
  • 新增房源
    • 姓名:
    • 电话:
    • 地址:
    • 月租:
    • 状态(未出租/已出租):
  • 查找房源
    • 请输入查找的id:
    • 有id 姓名 电话 地址 租金 状态
  • 删除房源
    • 选择要删除的房屋编号
    • 再次确认
  • 修改房源
    • 选择房屋编号
    • 列出修改的信息(不修改的地方直接回车)
  • 退出系统
    • 再次确认
    • 输出:你退出了程序~~~

项目设计-程序框架

在这里插入图片描述

上图每一个类对应一个包,便于管理。虽然最初设计时只有一个类或者一个文件,但是随着项目后续的完善,所对应的相关类有很多,因此这里的每个类对应一个包。上述图片用ioDraw绘制

工具类

实际开发中,公司都会提供对应的工具类和开发库,可以提高开发效率。因此在日常学习中要能够看懂别人写的代码,并正确调用

这里的 utility 类是课程提供的, 可在(16条消息) 韩顺平Utility工具类(java房屋出租项目)_m0_52228020的博客-CSDN博客复制到自己的项目里.

House类

House类的属性有 编号, 房主, 电话, 地址, 月租, 状态. House的对象表示一个房屋信息

将各属性写入House类, 并且设立相应的构造器与 setter 与 getter 方法, 为了方便输出对象信息, 还应该实现toString 方法的重写

@Override
public String toString() {
   
    return id +
            "\t" + name + 
            "\t" + phone +
            "\t" + address +
            "\t" + rent +
            "\t" + state;
}
HouseView类 与 HouseService类

HouseView类用于显示,HouseService类用于给HouseView类传输相应的数据,如HouseView中有listHouse()方法,而HouseService中的list()方法用于给listHouse()方法传送房屋列表的信息. 个人理解: HouseView相当于前端, HouseService相当于后端.

  1. 实现主菜单和完成退出软件的功能

说明:实现功能的三步曲[明确功能 --> 思路分析 --> 代码实现]

  • 功能说明:

    用户打开软件, 可以看见主菜单, 可退出软件

  • 思路分析:

    在HouseView.java中, 编写一个方法mainMenu, 显示菜单.

  • 实现效果

    =房屋出租系统菜单
    1 新 增 房 源
    2 查 找 房 源
    3 删 除 房 源 信 息
    4 修 改 房 源 信 息
    5 房 屋 列 表
    6 退 出
    7 新增房源
    请输入你的选择(1 ~ 6):
    1
    新 增

  1. 完成显示房屋列表的功能

    • 功能说明: 显示房屋列表的各个信息

    • 思路分析: 需要编写HouseView.java 和 HouseService.Java

      在显示房屋列表时, 如果总房源数小于数组容量, 应该设置 break 语句, 防止输出空指针

      public void listHouses(){
             
              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++) {
             //   1.这里不因该用houses.length, 因为houses是能表示的房屋总数, 实际存在的房屋因该另外设置变量
                  //2. 或者加一个判断
                  if(houses[i] == null){
             
                      break;
                  }
                  System.out.println(houses[i]);  //这里输出房屋的基本信息, 默认输出调用的是toString方法
              }
              System.out.println("===================房屋列表显示完毕==================");
          }
      
      • 实现效果

        =================== 房 屋 列 表 =====

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值