话不多说 娱乐

==================================================

  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 图书馆系统 练习的更多相关文章

  1. Java日志系统及框架分析

    最近在考虑将容器(Tomcat)内的应用日志统一成slf4j + logback,主要目的有: 快速定位应用日志输出路径,方便日志的采集: 能动态调整日志的级别,方便线上问题定位: 方便在容器层面做扩 ...

  2. Java日志系统框架的设计与实现

    推荐一篇好的文章介绍java日志系统框架的设计的文章:http://soft.chinabyte.com/database/438/11321938.shtml 文章内容总结: 日志系统对跟踪调试.程 ...

  3. [论文笔记] 一种Java遗留系统服务化切分和封装方法 (计算机学报, 2009)

    李翔,怀进鹏,曾晋,高鹏. 一种Java遗留系统服务化切分和封装方法. 计算机学报, 32(9), 2009, p1084-1815 (gs:5) 1. 本文研究从Java遗留系统中切分并封装出Web ...

  4. java获取系统指定时间年月日

    java获取系统指定时间年月日 private String setDateTime(String falg) { Calendar c = Calendar.getInstance(); c.set ...

  5. JAVA获得系统配置文件的System Properties

    来个java获得系统配置文件的 public class SystemProperties { public static void main(String[] args) { Properties ...

  6. Java消息系统简单设计与实现

    前言:由于导师在我的毕设项目里加了消息系统(本来想水水就过的..),没办法...来稍微研究研究吧..简单简单... 需求分析 我的毕设是一个博客系统,类似于简书这样的,所以消息系统也类似,在用户的消息 ...

  7. java 根据系统日期获取前一天、后一天时间(根据初始日期推算出期望(向前/向后)日期)

      1.情景展示  java 根据系统当前日期获取前一天日期.后一天日期,或者根据初始日期推算出期望(向前/向后)日期. 2.解决方案 导包 import java.text.ParseExcepti ...

  8. java 获取系统当前时间并格式化

      java 获取系统当前时间并格式化 CreateTime--2018年5月9日11:41:00 Author:Marydon 实现方式有三种 updateTime--2018年7月23日09点32 ...

  9. 如何使用Java读写系统属性?

    如何使用Java读写系统属性? 读: Properties props = System.getProperties(); Enumeration prop_names = props.propert ...

随机推荐

  1. spring-cloud配置服务器配置

    本文介绍spring-cloud配置服务器 server端配置 目录结构 依赖 java代码 properties 运行 client端配置 目录结构 依赖 java代码 properties 运行 ...

  2. 优化深度神经网络(一) dropout 初始化

    Coursera吴恩达<优化深度神经网络>课程笔记(1)-- 深度学习的实用层面 1. Train/Dev/Test sets  训练集(Training sets).验证集(Develo ...

  3. Table Tennis Game 2

    Description Misha and Vanya have played several table tennis sets. Each set consists of several serv ...

  4. uboot启动正常,加载内核kernel启…

    先说现象吧:uboot能够正常启动,不过在kernel启动时却出现起不了的现象,停在这里 Uncompressing Linux.................................... ...

  5. Spark的几个问题

    1.application是由driver和executor组成的,executor可以分成task,task又可以分成为stage.当一个任务提交给spark之后,spark机群的主节点会出现dri ...

  6. canvas二进制字符下落

      ?   1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 3 ...

  7. Enumeration & Class & Structure

    [Enumeration] 1.当一个枚举值类型已经确定后,可以使用shorter dot syntax来赋予其它值: 2.对一个枚举值switch的时候也可以使用short dot syntax: ...

  8. 【bzoj2749】[HAOI2012]外星人

    2749: [HAOI2012]外星人 Time Limit: 3 Sec  Memory Limit: 128 MBSubmit: 677  Solved: 360[Submit][Status][ ...

  9. windows7 Sql server 2012 尝试读取或写入受保护的内存。这通常指示其他内存已损坏的修复

    项目中,使用了sql server2012数据库,服务端是2012,客户端如果是2008的话,就会报错: 索引错误. 没办法,就安装了sql server2012客户端.但是还是报错,无法连上数据库服 ...

  10. OS线程模型

    线程模型 N对1 内核线程 映射 用户进程, 用户进程里可以启多个线程 1对1 内核线程和用户线程 1对1 Linux采用这种方式 N对M 用户线程被抽象为更轻量的线程, 内核线程和轻量的线程对应 进 ...