Javaミニ図書管理システム
41124 ワード
Java配列図書管理システム
配列を使用した図書管理
Java変数、配列、選択構造、循環構造などの知識を総合的に用いて図書管理を実現する
機能分析:新規図書 ユーザは、システムに新しい図書を追加することができ、図書庫に図書を格納場所がない場合、ユーザに新刊書 をインストール場所がないことを示すことができる.図書を見る は、現在の図書庫にある図書の種類 をユーザに美しく示す.図書 を削除図書を新たに追加するとともに、すでに重要ではない図書を整理し、貸し出しを提供しない場合、これらの図書の情報をシステムから 削除する必要がある.図書 を貸し出しますユーザは、必要とする貸出図書の名称を入力、ユーザが借りた図書の日付を記録し、ユーザが入力数字に対して相応の判断を行う .返却図書 ユーザは、返却すべき図書名を入力、ユーザが返却した図書の日付を記録し、返却日が真実であるか否かを判断し、相応の賃貸料 を計算する.終了 システム を終了する
配列を使用した図書管理
Java変数、配列、選択構造、循環構造などの知識を総合的に用いて図書管理を実現する
機能分析:
public static void main(String[] args) {
int isReturn = 0;
double money = 1;
Scanner input = new Scanner(System.in);
String[] name = {
" "," "," "," "," ",null
};
int[] state = {
1,0,0,0,0,0
};
int[] count = {
15,12,30,0,0,0
};
int[] date = new int[6];
try {
do {
System.out.println("
----------------------------------");
System.out.println("
\t1.
\t2.
\t3.
\t4.
\t5.
\t6.
");
System.out.println("----------------------------------");
//
System.out.println(" :");
int num = input.nextInt();
//
switch (num) {
case 1:
System.out.println("--->
");
//
int index01 = -1;
//
boolean check = false;
// ,
for (int i = 0; i < name.length; i++) {
//
if (name[i] == null) {
index01 = i; //
check = true; //
break; //
}
}
if (check) {
//
System.out.println(" :");
name[index01] = input.next();
System.out.println(" 《" + name[index01] + "》 !");
}else{
System.out.println(" , ...");
}
break;
case 2:
System.out.println("--->
");
//
System.out.println(" \t \t \t \t ");
//
for (int i = 0; i < name.length; i++) {
if (name[i] != null) {
// ( if )
String out = state[i] == 0 ? " ":" ";
String time = date[i] == 0 ? " ":date[i]+" ";
System.out.println((i + 1) + "\t" + out + "\t" + name[i] + "\t" + time + "\t" + count[i]);
}
}
break;
case 3:
System.out.println("--->
");
System.out.println(" :");
String delete = input.next();
int index02 = -1;
boolean isTrue = false;
for (int i = 0; i < name.length; i++) {
if (name[i].equals(delete)) {
index02 = i;
isTrue = true;
break;
}
}
if (isTrue) {
if (state[index02] == 0) {
for (int i = index02; i < name.length-1; i++) {
name[i] = name[i+1];
date[i] = date[i+1];
state[i] = state[i+1];
count[i] = count[i+1];
}
name[5] = null;
System.out.println("《" + delete + "》 !");
}else{
System.out.println(" , !");
}
}else{
System.out.println(" ...");
}
break;
case 4:
boolean isFind = true;
System.out.println("--->
");
System.out.println(" :");
String book = input.next();
int index03 = -1;
for (int i = 0; i < name.length; i++) {
if (name[i].equals(book)) {
index03 = i;
isFind = true;
break;
}
}
if (isFind) {
if (state[index03] == 0) {
System.out.println(" :");
int outdate=input.nextInt();
while(outdate > 31 || outdate < 1){
System.out.println(" , ...");
outdate=input.nextInt();
}
System.out.println("《" + book + "》 。");
date[index03]=outdate;
state[index03]=1;
count[index03]++;
}else{
System.out.println(" 《" + book + "》 。");
}
}else{
System.out.println(" , ...");
}
break;
case 5:
System.out.println("--->
");
System.out.println(" :");
String give = input.next();
int index04 = -1;
boolean again = false;
for (int i = 0; i < name.length; i++) {
if (name[i].equals(give)) {
index04 = i;
again = true;
break;
}
}
if (again) {
if (state[index04] == 1) {
System.out.println(" :");
int giveDate=input.nextInt();
while(giveDate < date[index04] || giveDate > 31){
System.out.println(" , :");
giveDate=input.nextInt();
}
System.out.println(" 《" + give + "》 。");
System.out.println(" :" + date[index04] + " ");
System.out.println(" :" + giveDate + " ");
System.out.println(" :" + (giveDate-date[index04]) * money + " ");
state[index04] = 0;
date[index04] = 0;
}else{
System.out.println(" , ");
}
}else{
System.out.println(" !");
}
break;
case 6:
System.out.println(" ...");
return;
default:
System.out.println(" , ...");
while(num > 6 || num < 0){
num = input.nextInt();
}
break;
}
System.out.println("********************************************
0 :");
isReturn = input.nextInt();
while (isReturn != 0) {
System.out.println("
, ...( 0 )");
isReturn = input.nextInt();
}
} while (isReturn == 0);
}catch (InputMismatchException e) {
System.out.println(" , ...");
}
}