자바 콘 솔 출력 도서관 관리 시스템
프로젝트 에서 저 는 배열 로 만 데 이 터 를 저장 하고 for 순환 과 if 조건 문 으로 만 완성 합 니 다.배열 도구 류 도 사용 하지 않 아서 많은 조건 문 구 를 사용 해 야 합 니 다.한계 가 있 지만 초보 자 들 로 하여 금 작은 프로젝트 를 하 는 즐거움 을 신속하게 체험 하 게 할 수 있 습 니 다.for 와 if 이런 문 구 를 연습 하고 그들 사이 에 포 함 된 논리 관 계 를 연습 할 수 있 습 니 다.시간 이 제한 되 어 최적화 되 지 않 았 습 니 다.주로 초보 자 들 에 게 자바 프로젝트 를 하 는 대상 프로 그래 밍 사상(OOP)을 체험 하 게 하고 초보 자 들 에 게 프로젝트 를 하 는 즐거움 을 체험 하 게 합 니 다.헤헤!
더 이상 말 하지 않 고 바로 본론 으로 들 어 갔다.
디자인 방향 은 다음 과 같다.
먼저 eclipse 로 가방 과 클래스 를 만 듭 니 다.
//UserData.java 에 다음 코드 를 입력 하 십시오
package com.jiaxun.library.data;
public class UserData {
private String username = " ";//
private String password = "zengjiaxun";//
public String getUser() {
return username;
}
public String getPassword() {
return password;
}
}
//북 데이터 자바 에 다음 코드 를 입력 하 십시오
package com.jiaxun.library.data;
public class BookData {
//
public BookData() {
{
String noreaders= " ";
for (int i = 0; i < borrowreaders.length; i++) {
borrowreaders[i]=noreaders;
}
for (int i = 0; i < 5; i++) {
switch (i) {
case 0:
booknames[i]=" ";
authors[i]=" ";
pubdates[i]="2016-03-31";
sumpaginations[i]="1320";
break;
case 1:
booknames[i]=" ";
authors[i]=" ";
pubdates[i]="2017-07-25";
sumpaginations[i]="656";
break;
case 2:
booknames[i]=" ";
authors[i]=" ";
pubdates[i]="2016-01-31";
sumpaginations[i]="1120";
break;
case 3:
booknames[i]=" ";
authors[i]=" ";
pubdates[i]="2017-04-04";
sumpaginations[i]="1310";
break;
case 4:
booknames[i]=" ";
authors[i]=" ";
pubdates[i]="2012-08-20";
sumpaginations[i]="954";
break;
}
}
}
}
public String[] booknames = new String[10];//
public String[] authors = new String[10];//
public String[] pubdates = new String[10];//
public String[] sumpaginations = new String[10];//
public String[] borrowreaders = new String[10];//
}
//Bo.java 에 다음 코드 를 입력 하 십시오
package com.jiaxun.library.bo;
import java.util.Scanner;
import com.jiaxun.library.data.BookData;
import com.jiaxun.library.data.UserData;
public class Bo {
public static BookData book = new BookData();
UserData user = new UserData();
//
public int login(String username, String password) {
if (username.equals(user.getUser())) {
if (password.equals(user.getPassword())) {
return 1;//
} else {
return 0;//
}
} else {
return -1;//
}
}
/*
*
*
*
*/
public void showBook() {
System.out.println(" " + (book.booknames.length - remainSpace()) + " ");
int a = bookinfo();
if (a == 0) {
//
showAll();
} else if (a > 0 && a <= book.booknames.length) {
//
showPart(a);
} else {
System.out.println(" !");
showBook();
}
}
//
public void showAll() {
for (int i = 0; i < book.booknames.length; i++) {
if (book.booknames[i] != null) {
System.out.println("--------------------------------------- " + (i + 1)
+ "--------------------------------------------------------------");
System.out.println(" " + (i + 1) + " :");
System.out.print(" :" + book.booknames[i] + " ");
System.out.print(" :" + book.authors[i] + " ");
System.out.print(" :" + book.pubdates[i] + " ");
System.out.print(" :" + book.sumpaginations[i] + " ");
System.out.println(" :" + book.borrowreaders[i]);
}
}
System.out.println(
"---------------------------------------------------------------------------------------------------------");
}
//
public void showPart(int a) {
int i = a;
System.out.println(
"--------------- ---------------------------------------------------------------------------------------------------");
System.out.println(" " + (i) + " :");
System.out.print(" :" + book.booknames[i - 1] + " ");
System.out.println(" :" + book.authors[i - 1] + " ");
System.out.print(" :" + book.pubdates[i - 1] + " ");
System.out.print(" :" + book.sumpaginations[i - 1] + " ");
System.out.println(" :" + book.borrowreaders[i - 1]);
System.out.println(
"--------------------------------------------------------------- ---------------------------------------------------");
}
//
public int bookinfo() {
for (int i = 0; i < book.booknames.length; i++) {
if (book.booknames[i] != null) {
System.out.println(" " + (i + 1) + ":" + book.booknames[i] + " ");
}
}
System.out.print(" ( 0 ):");
Scanner scanner = new Scanner(System.in);
int i = scanner.nextInt();
return i;
}
//
public int addBook(String bookname, String author, String pubdate, String sumpagination) {
int flag = 0;// 1 ,0 ,-1
if (book.booknames[book.booknames.length - 1] != null) {
flag = -1;//
}
if (book.booknames[book.booknames.length - 1] == null) {
for (int i = 0; i < book.booknames.length; i++) {
if (bookname.equals(book.booknames[i])) {
flag = 0;// book.booknames[i]
break;
}
if (!(bookname.equals(book.booknames[i]))) {
//
add(bookname, author, pubdate, sumpagination);
flag = 1;//
break;
}
}
}
return flag;
}
//
public void add(String bookname, String author, String pubdate, String sumpagination) {
for (int i = 0; i < book.booknames.length; i++) {
if (book.booknames[i] == null) {
book.booknames[i] = bookname;
book.authors[i] = author;
book.pubdates[i] = pubdate;
book.sumpaginations[i] = sumpagination;
break;
}
}
}
//
public int remainSpace() {
int count = 0;
try {
for (int i = 0; i < book.booknames.length; i++) {
if (book.booknames[i] == null) {
++count;
}
}
} catch (Exception e) {
// TODO: handle exception
}
return count;
}
//
public int selectBook(String bookname) {
int flag = 0;
for (int i = 0; i < book.booknames.length; i++) {
if (bookname.equals("")) {
flag = -1;// -1
break;
}
//
if (bookname.equals(book.booknames[i])) {
flag = 1;// 1
showPart(i + 1);
break;
}
if (!bookname.equals(book.booknames[i])) {
if (i == book.booknames.length - 1) {
flag = 0;// 0
}
}
}
return flag;
}
// , , -1
public int selectIndex(String bookname) {
int flag = -1;
for (int i = 0; i < book.booknames.length; i++) {
if (bookname.equals(book.booknames[i])) {
flag = i;
}
}
return flag;//
}
// 1 2 3 4 5
public void modinfo(int a, String value, int index) {
switch (a) {
case 1:
book.booknames[index] = value;
break;
case 2:
book.authors[index] = value;
break;
case 3:
book.pubdates[index] = value;
break;
case 4:
book.sumpaginations[index] = value;
break;
case 5:
book.borrowreaders[index] = value;
break;
}
}
//
public void deleteBook(String bookname) {
int a = selectIndex(bookname);
book.booknames[a] = null;
book.authors[a] = null;
book.pubdates[a] = null;
book.sumpaginations[a] = null;
book.booknames[a] = null;
}
//
public int testReader(String bookname) {
// , , a>=0, -1
int a = selectIndex(bookname);
//
if (a >= 0) {
if ((book.borrowreaders[a].equals(" ") || book.borrowreaders[a].equals("")))// ,""
return 0;//
else
return 1;//
} else {
return -1;//
}
}
//
public void setBorrowReader(String bookname){
int a = selectIndex(bookname);
book.borrowreaders[a]=" ";
}
//
public String getBorrowReader(String bookname){
int a = selectIndex(bookname);
return book.borrowreaders[a];
}
//
public void borrow(String bookname,String readername){
int a = selectBook(bookname);
book.borrowreaders[a]=readername;
}
}
//LibraryUI.java 에 다음 코드 를 입력 하 십시오
package com.jiaxun.library.ui;
import java.util.Scanner;
import com.jiaxun.library.bo.Bo;
public class LibraryUI {
Bo bo = new Bo();
public static void main(String[] args) {
LibraryUI ui = new LibraryUI();
ui.welcome();//
}
//
public void welcome() {
System.out.println("*********************************");
System.out.println("******** ☆ ********");
System.out.println("*********************************");
loginBoundary();//
}
//
public void loginBoundary() {
System.out.print(" :");
Scanner scanner = new Scanner(System.in);
String username = scanner.nextLine();
System.out.print(" :");
Scanner scanner1 = new Scanner(System.in);
String password = scanner1.nextLine();
int flag = bo.login(username, password);//
switch (flag) {
case 0://
System.out.println(" , 。");
loginBoundary();
break;
case 1://
System.out.println(" !");
showMenu();//
break;
case -1://
System.out.println(" , 。");
loginBoundary();
break;
}
}
//
public void showMenu() {
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.println(" ―― :7");
System.out.print(" :");
Scanner scanner = new Scanner(System.in);
int a = scanner.nextInt();//
switch (a) {
case 1://
showBook();
returnMethod();//
break;
case 2://
addBook();
break;
case 3://
modBookInfo();
break;
case 4://
delete();
break;
case 5://
returnBook();
break;
case 6://
borrowBook();
break;
case 7://
welcome();
scanner.close();
break;
}
}
//
public void returnMethod() {
System.out.print(" ENTER :");
Scanner scanner = new Scanner(System.in);
String i = scanner.nextLine();
showMenu();
}
//
public void showBook() {
bo.showBook();
}
//
public void addBook() {
System.out.print(" :");//
Scanner scanner = new Scanner(System.in);
String bookname = scanner.nextLine();
System.out.print(" " + bookname + " :");//
Scanner scanner1 = new Scanner(System.in);
String author = scanner1.nextLine();
System.out.print(" " + bookname + " ( 2000-01-01):");//
Scanner scanner2 = new Scanner(System.in);
String pubdate = scanner2.nextLine();
System.out.print(" " + bookname + " ( ):");//
Scanner scanner3 = new Scanner(System.in);
String sumpagination = scanner3.nextLine();
int flag = bo.addBook(bookname, author, pubdate, sumpagination);
// 1 ,0 ,-1
switch (flag) {
case 1:
System.out.println(" " + bookname + " , " + bo.remainSpace() + " 。");
returnMethod();// ,
break;
case 0:
System.out.println(" ," + bookname + " !");
returnMethod();// ,
break;
case -1:
System.out.println(" , , 。");
showMenu();
break;
}
}
//
public void modBookInfo() {
System.out.print(" :");
Scanner scanner = new Scanner(System.in);
String bookname = scanner.nextLine();
//
int flag = bo.selectBook(bookname);
switch (flag) {
case 0:
System.out.print(" , 0 , 1 。");
int a = scanner.nextInt();
if (a == 0) {
modBookInfo();
} else if (a == 1) {
showMenu();
}
break;
case -1:
System.out.println(" , 0 , 1 。");
int a1 = scanner.nextInt();
if (a1 == 0) {
modBookInfo();
} else {
showMenu();
}
break;
case 1:
System.out.print(" , ( “1” , “2” , “3” , “4” , “5” ) :");
int a2 = scanner.nextInt();// 1 2 3 4 5
if (a2 > 0 && a2 < 6) {
System.out.print(" " + sortName(a2) + ":");
Scanner scanner2 = new Scanner(System.in);
String value = scanner2.nextLine();
int index = bo.selectIndex(bookname);
bo.modinfo(a2, value, index);
System.out.println(bookname + " !");
returnMethod();
} else {
System.out.println(" 。 !");
modBookInfo();
}
break;
}
}
//
public String sortName(int flag) {
if (flag == 1)
return " ";
if (flag == 2)
return " ";
if (flag == 3)
return " ";
if (flag == 4)
return " ";
else
return " ";
}
//
public void delete() {
System.out.print(" :");
Scanner scanner = new Scanner(System.in);
String bookname = scanner.nextLine();
int flag = bo.testReader(bookname);
//
if (flag == 0) {
bo.deleteBook(bookname);
System.out.println(bookname + " ! 0 , 1 ");
delReturn();
} else if (flag == 1) {//
System.out.println(" , 。 0 , 1 ");
delReturn();
} else {//
System.out.println(" , 。 0 , 1 ");
delReturn();
}
}
//
public void delReturn() {
Scanner scanner1 = new Scanner(System.in);
int i = scanner1.nextInt();
if (i == 0) {
showMenu();
} else if (i == 1) {
delete();
}
}
//
public void returnBook() {
System.out.print(" :");
Scanner scanner = new Scanner(System.in);
String bookname = scanner.nextLine();
int flag = bo.testReader(bookname);
if (flag == 0) {
System.out.println(bookname + " 。");
System.out.print(" 0 , ");
String a = scanner.nextLine();
if(a.equals("0")){
showMenu();
}else {
returnBook();
}
} else if (flag == -1) {
System.out.println(bookname + " 。");
System.out.print(" 0 , ");
String a = scanner.nextLine();
if(a.equals("0")){
showMenu();
}else {
returnBook();
}
} else if (flag == 1) {
System.out.println(bo.getBorrowReader(bookname) + " !");
bo.setBorrowReader(bookname);
System.out.print(" 0 , ");
String a = scanner.nextLine();
if(a.equals("0")){
showMenu();
}else {
returnBook();
}
}
}
//
public void borrowBook() {
System.out.print(" :");
Scanner scanner = new Scanner(System.in);
String bookname = scanner.nextLine();
int flag = bo.testReader(bookname);
switch (flag) {
case 0://
System.out.println(" :");
String readername = scanner.nextLine();
bo.borrow(bookname,readername);
System.out.println(readername+" "+bookname+" 。");
System.out.print(" 0 , 1 :");
int a0 = scanner.nextInt();
if(a0==0)
showMenu();
if(a0==1)
borrowBook();
break;
case 1://
System.out.println(" ," + bookname + " !");
System.out.print(" 0 , 1 :");
int a = scanner.nextInt();
switch (a) {
case 0:
showMenu();
break;
case 1:
borrowBook();
break;
}
case -1://
System.out.println(" ," + bookname + " 。");
System.out.print(" 0 , 1 :");
int a1 = scanner.nextInt();
switch (a1) {
case 0:
showMenu();
break;
case 1:
borrowBook();
break;
}
}
}
}
더 많은 학습 자 료 는 주제 인 에 주목 하 세 요.이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Is Eclipse IDE dying?In 2014 the Eclipse IDE is the leading development environment for Java with a market share of approximately 65%. but ac...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.