java数组实现简单的DVD管理
package com; import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner; public class Demo{
public static void main(String[] args) {
Scanner input = new Scanner(System.in); String[] names = new String[10];
String[] states = new String[10];
String[] date = new String[10];
int[] counts = new int[10]; names[0]="罗宁";
states[0]="可借"; names[1]="死亡之翼";
states[1]="可借"; names[2]="国王之谷";
states[2]="可借"; names[3]="闪光平原";
states[3]="可借"; String isBack = ""; do{
System.out.println("欢迎使用迷你DVD管理系统");
System.out.println("---------------------");
System.out.println("1.新增DVD");
System.out.println("2.查看DVD");
System.out.println("3.删除DVD");
System.out.println("4.借出DVD");
System.out.println("5.归还DVD");
System.out.println("6.退出DVD");
System.out.println("---------------------"); System.out.println("请选择:");
int choose = input.nextInt(); if(choose == 6){
break;
} switch(choose){
case 1:
System.out.println("--->新增DVD");
//定义保存信息的下标
int index1=-1;
for(int i = 0;i<names.length;i++){
if(names[i]==null){
index1=i;
break;
}
}
//判断是否可以保存
if(index1==-1){
System.out.println("保存满了,请稍候再试");
}else{
System.out.println("请输入新增DVD名称!");
String name = input.next(); names[index1]=name;
states[index1]="可借"; System.out.println("增加成功-_-!");
} break;
case 2:
System.out.println("--->查看DVD");
int count = 1; System.out.println("序号\t状态\t名称\t\t借出日期\t\t借出次数");
for(int i = 0;i<names.length;i++){
if(date[i]==null){
date[i]="";
}
if(names[i]==null){
continue;
}
System.out.println();
System.out.println(count+"\t"+states[i]+"\t"+date[i]+"\t"+counts);
count++;
}
break;
case 3:
System.out.println("--->删除DVD");
System.out.println("请输入要删除DVD的名称:");
String delName=input.next(); int index3 = -1;
for(int i = 0;i<names.length;i++){
if(delName.equals(names[i])){
if("可借".equals(states[i])){
index3=i;
break;
}
index3=-2;
break;
}
}
if(index3==-1){
System.out.println("输入的DVD信息不存在,请重新输入!!!!");
}else if(index3==-2){
System.out.println("该DVD已借出,不能删除!!!");
}
else{
names[index3]=null;
System.out.println("删除成功!!!");
}
break;
case 4:
System.out.println("--->借出DVD");
System.out.println("请输入要借的DVD名称:");
String borrowName = input.next(); int index4=-1; //循环遍历该DVD是否存在
for(int i = 0;i<names.length;i++){
if(borrowName.equals(names[i])){
if("可借".equals(states[i])){
index4=i;
break;
}
index4=-2;
break;
}
}
if(index4==-1){
System.out.println("输入的DVD信息不存在!!!");
}else if(index4==-2){
System.out.println("该DVD已借出!");
}else{
Date d =new Date();
SimpleDateFormat df=new SimpleDateFormat();
String dateStr=df.format(d); states[index4]="已借出";
date[index4]=dateStr;
counts[index4] = counts[index4]+1;
System.out.println("借出成功!");
}
break;
case 5:
System.out.println("--->归还DVD");
System.out.println("请输入要归还的DVD名称:");
String backName=input.next(); int index5=-1;
for(int i = 0;i<names.length;i++){
if(backName.equals(names[i])){
if("已借出".equals(states[i])){
index5=i;
break;
}
index5=-2;
break;
}
}
if(index5==-1){
System.out.println("该DVD不存在,不能归还!");
}else if(index5==-2){
System.out.println("该DVD未借出,无法归还!");
}else{
states[index5]="可借";
date[index5]="";
System.out.println("归还成功!");
}
break; }
System.out.println("****************************");
System.out.println("输入0返回");
isBack=input.next();
}
while(isBack.equals("0"));
System.out.println("谢谢使用!");
}
}
java数组实现简单的DVD管理的更多相关文章
- 数据结构笔记--栈的总结及java数组实现简单栈结构
杂谈"栈"结构: 栈(Stack)是一种插入删除操作都只能在一个位置上进表,这个位置位于表的末端,叫做栈顶(Top). 对栈的基本操作有push和pop,表示进栈和出栈.也就相当于 ...
- java模拟DVD管理器
import java.util.*;import java.text.*;class DVDSet{ String[] name = new String[50]; //名字 int[] ...
- java 迷你DVD管理器
1.DvdSet类 package dvd_01; /** * 定义dvd的一些属性 * @author Administrator * */ public class DvdSet { String ...
- Java数据结构和算法之数组与简单排序
一.数组于简单排序 数组 数组(array)是相同类型变量的集合,可以使用共同的名字引用它.数组可被定义为任何类型,可以是一维或多维.数组中的一个特别要素是通过下标来访问它.数组提供了一种将有联系的信 ...
- Java数组的内存管理
Java数组的内存管理 Java语言是典型的静态语言,因此Java的数组是静态的,即当数组被初始化之后,该数组的长度是不可变的.Java程序中的数组必须经初始化才能使用.所谓初始化,就是当数组对象的元 ...
- java数据结构和算法01(数组的简单使用)
一直都对这一块没有什么想法,加上不怎么理解,只是懂个大概:最近突然感觉对数据结构和算法这块有点儿兴趣,决定还是尽量详细的看看这些结构和算法: 话说什么事数据结构和算法呢?现在我也说不上来,等我学的差不 ...
- Java语言实现简单FTP软件------>上传下载管理模块的实现(十一)
1.上传本地文件或文件夹到远程FTP服务器端的功能. 当用户在本地文件列表中选择想要上传的文件后,点击上传按钮,将本机上指定的文件上传到FTP服务器当前展现的目录,下图为上传子模块流程图 选择好要上传 ...
- 【数据结构与算法】Java制作一个简单数组类
bobo老师的玩转算法系列–玩转数据结构 简单记录 文章目录 不要小瞧数组 - 制作一个数组类 1 .使用Java中的数组 数组基础 简单使用 2.二次封装属于我们自己的数组 数组基础 制作属于我们自 ...
- Java的稀疏数组的简单代码实现
目录 Java的稀疏数组的简单代码实现 一.稀疏数组的基本概念 二.稀疏数组的Java代码实现思路 三.稀释数组的Java代码实现 四.结语 Java的稀疏数组的简单代码实现 一.稀疏数组的基本概念 ...
随机推荐
- RabbitMQ单机多实例配置
由于某些因素的限制,有时候你不得不在一台机器上去搭建一个rabbitmq集群,当然这种集群只适合自己玩玩,验证下结论,这个有点类似zookeeper的单机版.真实生成环境还是要配成多机集群的.有关怎么 ...
- Spring Boot 中yml配置文件
步骤一:yml格式 现在大家发现,在springboot里还是要用到配置文件的. 除了使用.properties外,springboot还支持 yml格式. 个人觉得yml格式的可读性和..prope ...
- Windows窗体应用程序常用的几个类的属性、方法以及事件
System.Diagnostics.Process 属性 public bool EnableRaisingEvents { get; set; }//获取或设置在进程终止时是否应激发 Exited ...
- Pandas 数据分析基础
Pandas 安装 anaconda 安装: conda list pandas 查看是否已经安装 conda install pandas conda update pandas pip 安装 pi ...
- js的数组问题
目录: 1. 遇到的问题 2. 解决方案 3. 内部原理 4. 总结 1. 遇到的问题 前天在写js时,遇到了一个很奇怪的问题:我有两个数组变量a.b,在经过一些运算后,数组b中有一些值,然后我就把数 ...
- CSS之position体验
目录: 1. position介绍 2. relative 3. position 4. fixed与static 5. 总结 1. position介绍 position最简单的理解就是元素位置的定 ...
- 使用Bind读取配置到C#的实例
在之前的一篇二级域名绑定的文章<.Net Core 二级域名绑定到指定的控制器>中,有一个小的地方是关于读取Json文件的配置信息的,当时是用了读取文件流的方式,一直以来觉得该方法太Low ...
- 理解OAuth 2.0授权
一.什么是OAuth 二.什么场景下会用到OAuth授权 三.OAuth 2.0中的4个成员 四.OAuth 2.0授权流程 五.OAuth 2.0授权模式 1. authorization c ...
- PHP XML Parser 函数
PHP XML Parser 简介 XML 函数允许您解析 XML 文档,但无法对其进行验证. XML 是一种用于标准结构化文档交换的数据格式.您可以在我们的 XML 教程 中找到更多有关 XML 的 ...
- python下调用不在环境变量中的firefox
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary binary = FirefoxBinary(r"D: ...