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 ...
随机推荐
- 字符串,字符数组(C/C++)
这个地方困惑我好久了,废话不多说 char c1[]="12345"; char *c2="12345"; string c3="12345" ...
- Py修行路 内置模块补充 datetime模块
Python提供了多个内置模块用于操作日期时间,像calendar,time,datetime.datetime模块用于是date和time模块的合集,他内部重新封装了time模块,相比于time ...
- 2009-2010网络最热的 嵌入式…
前段时间做了一个关于ARM9 2440资料的汇总帖,很高兴看到21ic和CSDN等论坛朋友们的支持和鼓励.当年学单片机的时候datasheet和学习资料基本都是在论坛上找到的,也遇到很多好心的高手朋友 ...
- Sprint + mybatis 编写测试
今天使用Spring 和mybatis框架编写项目,写了个测试方法方便测试,之前因为一直报空指针,注入不了,所以简单记录一下,方便以后使用 root.xml <?xml version=&quo ...
- 斐波那契数列,跳台阶(dp思想)
一 . 斐波那契数列:1,1,2,3,5,8,13,21 即后一项是前两项的和. class Solution { private: ]; public: Solution() { memset(ar ...
- idea maven项目依赖项有红色波浪线
在maven面板选中所有报错的maven项目,右键选择移除(remove),之后重新添加.
- 刷题向》DP》关于基础DP(easy)
openjudge 8464 这道题其实很简单,算是DP的基础题,比较适合开拓DP思维. 题目比较有欺骗性,其实稍微想想就可以解决,因为题意说第一次卖出后才能买入,所以我们可以考虑枚举断点,所以题目 ...
- Java c3p0 连接 MySQL
<?xml version="1.0" encoding="UTF-8"?> <!-- 需要导入c3p0驱动jar包和mysql驱动jar包 ...
- 安装 SQL Server 2014 Express
安装 SQL Server 2014 Express 我的电脑系统: Windows 10 64位 一 . 下载 安装Microsoft SQL Server 2014 Express 软甲下载地址: ...
- EF 常见语句以及sql语句简单 后续继续添加
1.注意级联删除的时候数据库的外键要设置为开启级联删除,(数据库里sqlserver的外键修改的时候,可以看到级联删除和级联更新) using System;using System.Collecti ...