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 ...
随机推荐
- Linux学习笔记 -- 磁盘的管理
df df命令参数功能:检查文件系统的磁盘空间占用情况.可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息. 语法: df [-ahikHTm] [目录或文件名] 选项与参数: -a ...
- java成神之——集合框架之ArrayList,Lists,Sets
集合 集合种类 ArrayList 声明 增删改查元素 遍历几种方式 空集合 子集合 不可变集合 LinkedList Lists 排序 类型转换 取交集 移动元素 删除交集元素 Sets 集合特点 ...
- sklearn 中 make_blobs模块
# 生成用于聚类的各向同性高斯blobsklearn.datasets.make_blobs(n_samples = 100,n_features = 2,center = 3,cluster_std ...
- 使用avalon实现SKU组合查询功能
SKU(stock keeping unit库存量单位)组合查询是网上商场一个非常常用的功能.具体来说,一件商品会有许多型号,许多颜色,许多产地,许多码寸,而满足用户选中的这些条件的具体商品可能有库存 ...
- Ubuntu16.04安装之后的几个设置
Ubuntu16.04安装之后的几个设置 Ubuntu16.04界面很漂亮,但是安装之后,需要做如下几个简单的设置,这样用的时候会更加顺畅. 1.中文支持 在右上角有一个齿轮,点击->Syste ...
- objc变量的获取
[objc变量的获取] C++成员变量通过偏移来寻找,速度极快.But Objc中的变量通过方法调用来寻找,方法首先根据变量名,找到ivar_t,然后在ivar_t对象中取出偏移,再用此偏移来取值(这 ...
- XP下,移动窗口产生重影的问题
最近做了一个东西,其中有一个小窗口需要跟着主窗口一起移动,结果发现在Xp系统上总是产生重影,需要刷新桌面才能消失. 移动窗口我使用的是MoveWindow,最后一个参数bRepaint传递的是FALS ...
- 记一篇Python学习的简易版教程
廖雪峰的教学博客https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/00143178 ...
- C++中内存区域的划分
栈存储区 那些由编译器在需要的时候分配,在不需要的时候自动清楚的变量的存储区.里面的变量通常是局部变量.函数参数等. 堆存储区(自由存储区) 那些由new或者malloc分配的内存块,他们的释放编译器 ...
- 【转】request的cache-control和response cache-control不同点
原文地址:http://www.cnblogs.com/lwhkdash/archive/2012/11/04/2748291.html HTTP协议中,关于一些头域的解释很模糊,网上的解释有些甚至是 ...