Java实战案例一:图书借阅系统
- 项目:图书借阅系统
- 项目简介:开发一个图书借阅系统,包括图书常用的查看、新增、删除、借出、归还等功能
- 开发工具:eclipse
- 语言:Java
- 知识点:程序控制结构、数组、IO
模块流程划分
将整个系统规划为三个文件来书写:
- Stsrt.java:程序入口->>main()函数,BookMgr类的声明和方法的调用
- BookSet.java:图书变量以及getters和setters的定义
- BookMgr.java:变量的初始化,菜单,功能方法的实现
程序执行效果图:
以下只给出源码框架,需要查看完整代码的可于微信搜索公众号“钥道不止”或“suoyue_zhan”或下方直接扫码关注并在后台回复“524055”即可获取完整代码
源码框架:
- Stsrt.java:此处可设置系统登录密码
package com;public class Start {public static void main(String[] args) {BookMgr dm = new BookMgr();dm.initial();dm.startMenu();}
}
- BookSet.java:getters和setter的定义,可使用eclipse快速生成
菜单导航栏->Source->Generate Getters an Setters
package com;public class BookSet {String[] name = new String[50]; //数组1存储图书名称int[] state = new int[50]; //数组2存储图书借出状态:0->已借出 / 1->可借String[] date = new String[50]; //数组3存储图书借出日期int[] count = new int[50]; //数组4存储图书借出次数
}
- BookMgr.java:功能实现,主要是数组的操作
Java 在线API中文手册:http://www.matools.com/api/java8
package com;import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Scanner;
import java.util.Date;public class BookMgr {//创建图书对象BookSet book = new BookSet();//已借出书籍数量private int lendCount = 0;//未借出书籍数量private int existCount = 0;//每一次的暂存租金private long charge;//getters/setters方法/*** 初始化四个图书*/public void initial() {book.name[0] = "数据结构";book.state[0] = 0;book.date[0] = "1997-7-1";book.count[0] = 12;book.name[1] = "数据库";book.state[1] = 1;book.count[1] = 14;book.name[2] = "Java手册";book.state[2] = 1;book.count[2] = 8;book.name[3] = "算法核心";book.state[3] = 1;book.count[3] = 4;}/*** 开始菜单*/public void startMenu() {System.out.println("欢迎使用图书借阅系统");System.out.println("-------------------------------------");System.out.println("0. 退 出"); System.out.println("1.借出排行榜"); System.out.println("2.新增图书");System.out.println("3.查看图书");System.out.println("4.删除图书");System.out.println("5.借出图书");System.out.println("6.归还图书");System.out.print("--------------------------------------\n");System.out.println("请选择:");Scanner input = new Scanner(System.in);int choice = input.nextInt();switch(choice) {case 0: //退出break;case 1: list();returnMain();break;case 2:add();break;case 3:search();returnMain();break;case 4:delete();break;case 5:lend();break;case 6:returnbook();break;default:System.out.println("输入有误,请重新输入..."); returnMain();}input.close(); }/*** 返回主菜单*/public void returnMain() {Scanner input = new Scanner(System.in);System.out.println("输入 0 返回:");if(input.nextInt() == 0) {startMenu();}else {System.out.println("输入错误, 异常终止!");}input.close();}/*** 借出排行榜* @return*/public String[] list() {//定义新数组,用来存放排序后图书信息String[] newname = new String[50];int[] newcount = new int[50];System.out.println("---> 排行榜\n");System.out.println("**************************");System.out.println("次数\t名称");//显示排行榜信息for(int i=newname.length-1;i>=0;i--) {if(newname[i] != null) {System.out.println(newcount[i]+"\t<<"+ newname[i]+ ">>" );}}System.out.println("**************************");return newname;}/*** 新增图书*/public void add() {//为方便测试,拆分方法为键盘输入方法和核心追加书籍方法System.out.println("---> 新增图书\n"); System.out.print("请输入图书名称: ");String name = getInputData();addBook(name);System.out.println("**************************");returnMain();}/*** 键盘输入数据,用于新增图书和删除图书的输入* @return*/private String getInputData() {Scanner input = new Scanner(System.in);String name = input.next();return name;}/*** 追加图书* @param naem* @return*/public BookSet addBook(String name) {return book;}/*** 查看图书*/public void search() {}/*** 删除图书*/public void delete() {System.out.println("---> 删除图书\n");System.out.print("请输入图书名称: ");String name = getInputData();//为方便测试用例,抽出一个方法deleteBook(name);returnMain();}/*** 删除图书的核心方法* @param name*/public void deleteBook(String name) {}/*** 借出图书*/public void lend() {}/*** 借出图书的核心方法* @param want* @param lendDate*/public void lendBook(String want,String lendDate) {}/*** 归还图书*/public void returnbook() {}/*** 归还图书并计算租金*/public void returnbook(String want, String redate) {}/*** 计算日期差** @param dstr1 第一个日期* @param dstr2 第二个日期*/public long charge(String dstr1, String dstr2) {return 0;}}
Java实战案例一:图书借阅系统相关推荐
- 基于java springboot android 安卓图书借阅系统源码(毕设)
开发环境及工具: 大于等于jdk1.8,大于mysql5.5,idea(eclipse),Android Studio 技术说明: springboot mybatis html vue.js boo ...
- 【Java之简易[图书借阅系统]】戳进来看看
大家好,今天给大家带来本人的自主编写的简易版[图书借阅系统],权当做个人的实战练习和学习作品!老师说过三分看,七分练! 成果展示: 一.设计需求 请设计一个图书借阅系统,实现图书信息的展示,借阅,还书 ...
- 基于JAVA图书借阅系统的设计与实现计算机毕业设计源码+系统+lw文档+部署
基于JAVA图书借阅系统的设计与实现计算机毕业设计源码+系统+lw文档+部署 基于JAVA图书借阅系统的设计与实现计算机毕业设计源码+系统+lw文档+部署 本源码技术栈: 项目架构:B/S架构 开发语 ...
- [附源码]java毕业设计图书借阅系统
项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclis ...
- 图书借阅java设计报告_JAVA课程设计报告图书借阅系统.pdf
课 程 设 计 课程设计名称: java课程设计 专 业 班 级 : 计科10 级4 班 学 生 姓 名 : 学 号 : 指 导 教 师 : 课程设计时间: 2012.6.18-2012.6.30 计 ...
- Java窗体图书管理系统Java图书借阅管理系统(图书借阅系统)
Java窗体图书管理系统Java图书借阅管理系统(图书借阅系统)
- java基于springboot +vue的图书馆图书借阅系统 nodejs前后端分离
随着社会的进步,人民生活水平的提高,越来越多的人开始重视自己精神方面的提高,图书成为越来越多人的选择,随之而来的是图书馆借还图书的火热.越来越多的人开始选择读书,借阅书籍,过去传统的手工操作式的租赁方 ...
- Java——图书借阅系统
** 项目需求: ** 为图书阅览室开发一个图书借阅系统,最多可存50本书,实现图书的管理.图书借阅系统具备以下功能: 1.查看图书信息 菜单选择查看功能,展示当前所有图书的相关信息,效果如下. ca ...
- java javawebjsp图书借阅系统(jsp图书管理系统 )jsp书籍借阅系统
java javawebjsp图书借阅系统(jsp图书管理系统 )jsp书籍借阅系统 protected void doGet(HttpServletRequest req, HttpServletR ...
最新文章
- java显示当月数据_Java统计当月与往月数据 使用StringTemplate
- axure 下拉多选 元件_Axure教程:下拉多选列表集合(多选下拉列表+单选下拉列表+分级下拉列表)...
- [转帖]Mootools源码分析-04 -- Array
- webpack使用插件将css抽取出来
- vue检测不到data里数组里面元素的变化
- orbeon form 通过 url 的方式同第三方应用集成的开发明细
- ABAP的一个新关键字 - How does FROM lookup_tab work
- rest和rest ful_还有更多REST技巧
- Java 反射(Array相关)
- 软件基本功:代码要有道理
- springboot+vue3+elementui plus进销存源码
- c++ 中 setw()函数
- 2020-2022年最全各省、市矢量和栅格数据(土地利用、植被覆盖、土壤类型、人口密度、NPP、气象水文数据、路网、省市县乡镇区划边界、poi数据、河流水系、建筑轮廓)
- 100M宽带能下载多快? 关于带宽的下载速度研究
- 分别使用while、do-while和for循环输出1-1000中含有7或者7倍数的整数之和及个数-详解
- PHP容器--Pimple运行流程浅析
- CentOS7下利用qBittorrent+Flex搭建自己的在线视频播放站
- 判断用户是否登录成功
- 常见字母组合发音规律
- hdu 4009 Transfer water(最小树形图模板)