Java小项目迷你图书管理系统
package 迷你图书管理系统;
import java.util.Scanner;
public class BookMgr {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
//数据初始化6本图书
//图书:图书的姓名,图书借阅状态,图书借阅日期,图书借阅次数
String[]names = new String[6];
int []states = new int[6];//0可借,1已借出
int []dates = new int[6];
int [] counts = new int[6];
names[0] = "白雪公主";
dates[0] = 5;
states[0] = 1;
counts[0] = 10;
names[1] = "葫芦兄弟";
dates[1] = 0;
states[1] = 0;
counts[1] = 16;
names[2] = "白雪公主2";
dates[2] = 0;
states[2] = 0;
counts[2] = 78;
//用户是否退出系统 true代表不退出,false代表退出系统。
boolean flag = true;
int num = 0;
do{
System.out.println("********欢迎使用迷你图书管理系统********");
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("请选择你的操作:");
int choose = input.nextInt();
switch(choose){
case 1:
//查看图书
System.out.println("\n图书信息列表-->");
System.out.println("图书序号\t图书名称\t图书状态\t借阅日期\t借阅次数");
//循环遍历所有的图书
for (int i = 0;i<names.length;i++) {
if (names[i] != null) {
String state = (states[i] == 0)?"可借阅":"已借出";
String date = (dates[i] == 0)?"":dates[i]+"日";
String count = counts[i]+"次";
System.out.println((i+1)+"\t"+names[i]+"\t"+state+"\t"+date+"\t"+count);
}else{
//遇到第一个为null的图书的名称,意味着后面的图书也为null不必循环了
break;
}
}
break;
case 2:
//新增图书
System.out.println("\n图书信息列表-->");
System.out.print("请输入新增图书名称:");
String name = input.next();
//是否能新增图书,如果货架满了(6)则无法添加false能添加true
boolean flagAdd = false;
for (int i = 0;i<names.length;i++) {
if (names[i] == null) {
flagAdd = true;
names[i] = name;
System.out.println("图书《"+name+"》添加成功!");
break;
}
}
if (!flagAdd) {
System.out.println("对不起,货架已满,无法添加图书!");
}
break;
case 3:
//借阅图书
break;
case 4:
//归还图书
break;
case 5:
//删除图书
break;
case 6:
//退出系统
flag = false;
break;
default:
//输入错误的数字
flag = false;
break;
}
//如果flag== false则结束循环,跳出系统
if (flag == false) {
//跳出循环
break;
}else{
//用户不结束使用系统,代表用户想返回主菜单继续操作
System.out.println("请输入0返回");
num= input.nextInt();
}
}while(num == 0);
System.out.println("谢谢,欢迎使用!");
}
}
Java小项目迷你图书管理系统的更多相关文章
- java初学小项目-酒店客房管理系统
最近初次接触JAVA,感觉之前学的C语言很有用,跟着视频做了一个小项目-酒店客房管理系统 /* 酒店客房管理系统 */ import java.util.Scanner;//通过键盘来输入命令需要的引 ...
- Java小项目--坦克大战(version1.0)
Java小项目--坦克大战<TankWar1.0> 这个小项目主要是练习j2se的基础内容和面向对象的思想.项目实现了基本的简单功能,我方一辆坦克,用上下左右键控制移动方向,按F键为发射炮 ...
- Java学习笔记三十:Java小项目之租车系统
Java小项目之租车系统 一:项目背景介绍: 根据所学知识,编写一个控制台版的“呱呱租车系统” 功能: 1.展示所有可租车辆: 2.选择车型.租车量: 3.展示租车清单,包含:总金额.总载货量以及其车 ...
- C项目实践--图书管理系统(3)
接下来将要实现用户管理模块的相关功能,用户管理模块的主要功能包括增加用户,查找用户以及保存用户等功能,查找用户时,如果查找成功,充许对查找到用户进行更新或删除操作.如果查找不成功,则给出相应的提示信息 ...
- C项目实践--图书管理系统(1)
1.功能需求分析 图书管理系统主要用于对大量的图书信息,包括书名.作者.出版社.出版日期.ISBN(书号)等进行增.删.改.查以及保存等操作.同时也包括对用户的管理,用户包括管理员和普通用户两种权限, ...
- C项目实践--图书管理系统(2)
前面在<<C项目实践-图书管理系统(1)>>中把系统中的三大功能模块中可能涉及到的常量,结构体及相关函数进行了声明定义,下来就来实现它们. 执行系统首先从登录到系统开始,所以首 ...
- Java小项目之:五子棋,你下棋下得过电脑吗?
Java小项目之:五子棋,你下棋下得过电脑吗? Java五子棋功能要求: 1.创建窗口和设计一个棋盘界面 2.实现鼠标点击,棋子出现,黑白棋轮流下 3.能够判断五子相连输赢 4.添加重新开始,悔棋,退 ...
- java小项目之:植物大战僵尸,这个僵尸有点冷!内附素材源码
Java小项目之:植物大战僵尸! <植物大战僵尸>是由PopCap Games开发的一款益智策略类单机游戏,于2009年5月5日发售,这款游戏可谓是无人不知无人不晓. 在我身边,上到40岁 ...
- Java小项目之:教你做个聊天系统!
Java小项目之:聊天系统 今天给大家带来的java练手小项目是一个简单的聊天室,界面简单,操作不难. 分为注册系统,登录系统和聊天系统三部分,很适合java小白练手. 完整的源码和素材请关注并私信我 ...
随机推荐
- AsycnTask
一.异步任务加载网络数据: 在Android中提供了一个异步任务的类AsyncTask,简单来说,这个类中的任务是运行在后台线程中的,并可以将结果放到UI线程中进行处理,它定义了三种泛型,分别是Par ...
- NUC970 U-Boot 使用說明
U-Boot 使用說明U-Boot 是一個主要用於嵌入式系統的開機載入程式, 可以支援多種不同的計算機系統結構, 包括ARM.MIPS.x86與 68K. 這也是一套在GNU通用公共許可證之下發布的自 ...
- uiimageview 异步加载图片
dispatch_async(dispatch_get_global_queue( DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^(void){ NSURL *url = ...
- PyQt4状态栏
主窗口 QMainWindow类用来创建应用程序的主窗口.通过该类,我们可以创建一个包含状态栏.工具栏和菜单栏的经典应用程序框架. 状态栏是用来显示状态信息的串口部件. #!/usr/bin/pyth ...
- cocos2dx游戏--欢欢英雄传说--为敌人添加移动和攻击动作
这里主要为敌人添加了一个移动动作和攻击动作.移动动作是很简略的我动他也动的方式.攻击动作是很简单的我打他也打的方式.效果:代码: #ifndef __Progress__ #define __Prog ...
- 使用jQuery操作元素属性
在jQuery中,提供了attr函数来操作元素属性,具体如下: 函数名 说明 例子 attr(name) 取得第一个匹配元素的属性值. $("input").attr(" ...
- ajax返回值传给js全局变量
1. $.ajaxSetup({ async : false //设置ajax为同步方式,异步方式的话在赋值时数据还未提取出来 });var t = ""; var enginee ...
- MUI 单图片压缩上传(拍照+系统相册): 选择立即上传
1 html 部分 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> < ...
- 设计模式之工厂方法模式(Java实现)
“我先来”,“不,老公,我先!”.远远的就听到几个人,哦不,是工厂方法模式和抽象工厂模式俩小夫妻在争吵,尼妹,又不是吃东西,谁先来不都一样(吃货的世界~).“抽象工厂模式,赶紧的自我介绍,工厂方法模式 ...
- ansible批量验证密码
author: headsen chen date: 2018-08-31 20:45:49 综合比较salt-ssh,ansible .sshpass等批量验证100台机器的密码,最好推荐用ans ...