java 图书馆系统 练习
话不多说 娱乐
==================================================
book 类(书本的基础属性)
package 图书管理系统01; /**
* @author CF
* @图书实体类
* 2019年3月8日
* 下午3:32:41
*/
public class book {
private String bookid;
private String bookName;
private String isbn; //出版号
private String type; //图书的类型
private int count; //当前书籍的库存量
private double price; /*
* 如果为空 或不是book类 则返回false
* 若书名相同返回true
*/
@Override
public boolean equals(Object obj) {
if(obj==null||!(obj instanceof book)) {
return false;
}
book book1=(book)obj;
return bookid.equals(book1.bookid);
} public String getBookid() {
return bookid;
}
public void setBookid(String bookid) {
this.bookid = bookid;
}
public String getBookName() {
return bookName;
}
public void setBookName(String bookName) {
this.bookName = bookName;
}
public String getIsbn() {
return isbn;
}
public void setIsbn(String isbn) {
this.isbn = isbn;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public int getCount() {
return count;
}
public void setCount(int count) {
this.count = count;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
}
管理类(实现书本的增删改查)
package 图书管理系统01; /**
* @author CF
* @图书业务管理类
*
* 2019年3月8日
* 下午3:45:28
*/
public class manage {
/*
* 查书本数量
*/
public int getbookcount() {
int count=0;
for(int i=0;i<data.books.length;i++) {
if(data.books[i].getBookid()!=null);
{
count++;
break;
}
}
return count;
}
/*
* 增加图书
* 仓库空间满返回false
*
*/
public boolean add(book book1) {
int bookcount=getbookcount();
if(data.books.length==bookcount)
return false;
//如果book不满 则book1加入最后的位置上
data.books[bookcount]=book1;
return true;
}
/**
* 删除传入的图书对象
* @param book1
* @return
*/
public boolean delete(book book1) {
int bookcount=getbookcount();
int delindex=-1; //要删除的下标
for(int i=0;i<bookcount;i++){
if(book1.equals(data.books[i])) {
delindex=i;
break;
}
}
if(delindex==0) {
return false;
}
for(int i=delindex;i<bookcount;i++){
data.books[i]=data.books[i+1];
}
return true;
}
public book find(String bookid) {
for(int i=0;i<getbookcount();i++) {
if(bookid.equals(data.books[i].getBookid())) {
return data.books[i];
}
}
System.out.println("没有找到");
return null;
}
public boolean instore(String bookid,int num) {
book book1=find(bookid);
for(int i=0;i<getbookcount();i++) {
if(bookid.equals(book1.getBookid())) {
book1.setCount(book1.getCount()+num);
return true; }
} data.books[getbookcount()].setBookid(bookid);
data.books[getbookcount()].setCount(num);
System.out.println("添加成功");
return false;
}
}
数据仓库类(用来实例化书本)
package 图书管理系统01; /**
* @author CF
* @数据仓库
* 2019年3月8日
* 下午3:50:35
*/
public class data {
public static book[] books=new book[999];
}
主函数
package 图书管理系统01; /**
* @author CF
* @测试
* 2019年3月8日
* 下午4:34:17
*/
public class main0 {
public static void main(String[] args) {
book newbook=new book();
newbook.setBookid("");
newbook.setBookName("大号"); manage newbook1=new manage();
newbook1.add(newbook);
show(newbook1);
newbook1.delete(newbook);
show(newbook1); } public static void show(manage newbook1) { if(newbook1.getbookcount()<0) {
System.out.println("null");
return;
}
for(int i=0;i<newbook1.getbookcount();i++) {
System.out.println(data.books[i].getBookid()+" "+data.books[i].getBookName()); }
}
}
===================================================================
有少许功能未实现
java 图书馆系统 练习的更多相关文章
- Java日志系统及框架分析
最近在考虑将容器(Tomcat)内的应用日志统一成slf4j + logback,主要目的有: 快速定位应用日志输出路径,方便日志的采集: 能动态调整日志的级别,方便线上问题定位: 方便在容器层面做扩 ...
- Java日志系统框架的设计与实现
推荐一篇好的文章介绍java日志系统框架的设计的文章:http://soft.chinabyte.com/database/438/11321938.shtml 文章内容总结: 日志系统对跟踪调试.程 ...
- [论文笔记] 一种Java遗留系统服务化切分和封装方法 (计算机学报, 2009)
李翔,怀进鹏,曾晋,高鹏. 一种Java遗留系统服务化切分和封装方法. 计算机学报, 32(9), 2009, p1084-1815 (gs:5) 1. 本文研究从Java遗留系统中切分并封装出Web ...
- java获取系统指定时间年月日
java获取系统指定时间年月日 private String setDateTime(String falg) { Calendar c = Calendar.getInstance(); c.set ...
- JAVA获得系统配置文件的System Properties
来个java获得系统配置文件的 public class SystemProperties { public static void main(String[] args) { Properties ...
- Java消息系统简单设计与实现
前言:由于导师在我的毕设项目里加了消息系统(本来想水水就过的..),没办法...来稍微研究研究吧..简单简单... 需求分析 我的毕设是一个博客系统,类似于简书这样的,所以消息系统也类似,在用户的消息 ...
- java 根据系统日期获取前一天、后一天时间(根据初始日期推算出期望(向前/向后)日期)
1.情景展示 java 根据系统当前日期获取前一天日期.后一天日期,或者根据初始日期推算出期望(向前/向后)日期. 2.解决方案 导包 import java.text.ParseExcepti ...
- java 获取系统当前时间并格式化
java 获取系统当前时间并格式化 CreateTime--2018年5月9日11:41:00 Author:Marydon 实现方式有三种 updateTime--2018年7月23日09点32 ...
- 如何使用Java读写系统属性?
如何使用Java读写系统属性? 读: Properties props = System.getProperties(); Enumeration prop_names = props.propert ...
随机推荐
- curl 命令参数
curl -X POST -H 'Content-Type: application/x-www-form-urlencoded; charset=UTF-8' -H 'Cache-Control: ...
- java的IO流初探
DEMO代码: /* * 文件IO流的简单演示 */ package com.IO; import java.io.*; public class Demo_IO_1 { /** * @param a ...
- Vue 简单的总结四(项目流程,DIY脚手架、vue-cli的使用)
项目流程 1.下载 cdn 2.引包 vue-router依赖vue vue-router.js 3.如果是模块化机制 Vue.use(vue-router) 4.创建示例 let Home = {/ ...
- Mycat之日志分析 select * from travelrecord order by id limit 100000,100 的执行过程
解释:mycat在执行分页排序的时候,分成2步走.如果M很大,会改写成 limit 0,m+n, 然后在每个MYSQL分片上排序后还需要在mycat汇总输出,所以会很慢.下面是详细执行计划以及日志输出 ...
- [android] setOnTouchEvent 设置返回值为true 和 false的区别
今天在做自定义的可选文本的 TextView 类时,用到了 View 类的 setOnTouchListener(OnTouchListener l)事件监听,在构造 OnTouchListener ...
- python小程序:备份文件
设计程序,有以下步骤: 需要备份的文件和目录由一个列表指定. 备份应该保存在主备份目录中. 文件备份成一个zip文件. zip存档的名称是当前的日期和时间. 解决方案: 版本一: #!/usr/bin ...
- 四.python数据类型,语句
Python基础 阅读: 120476 Python是一种计算机编程语言.计算机编程语言和我们日常使用的自然语言有所不同,最大的区别就是,自然语言在不同的语境下有不同的理解,而计算机要根据编程语言执行 ...
- 面试题:Java多线程必须掌握的十个问题 背1
一.进程与线程?并行与并发? 进程代表一个运行中的程序,是资源分配与调度的基本单位.进程有三大特性: 1.独立性:独立的资源,私有的地址空间,进程间互不影响. 2.动态性:进程具有生命周期. 3.并发 ...
- Servlet和JSP简述
什么是Servlet和JSP 用Java开发Web应用程序时用到的技术主要有两种,即Servlet和JSP. Servlet是在服务器端执行的Java程序,一个被称为Servlet容器的程序(其实就是 ...
- 用CSS3.0画圆
CSS3.0中有一个border-radius属性,这个属性允许向 div 元素添加圆角边框,也就是div边角不再一直是直角,在CSS3.0中可以做成圆角了,所以我们可以用这个属性用div画一个圆,或 ...