分享

LibraryMain

 weixiaofeng01 2017-02-23

package BookDemo;

import java.util.*;

public class LibraryMain {

private static Scanner scanner = new Scanner(System.in);// 定义输入
private static ArrayList<Book> books = new ArrayList<Book>(); // 定义一个集合books
private static ArrayList<Student> students = new ArrayList<Student>(); // 定义一个集合students
private static ArrayList<Borrow> borrows = new ArrayList<Borrow>(); // 定义一个集合borrows
private static Scanner sc;

public static void main(String[] args) {
for (boolean exit = true; exit;) {

String opt = showMenu();
opt = opt.toUpperCase();
switch (opt) {
case "A":
Book.addBook(); // A.添加图书
break;
case "B":
Book.findBookByname(); // B.根据书名查找图书
break;
case "C":
Book.showAllBooks(); // C.查看所有图书
break;
case "D":
Book.deleteBook();// D.删除图书
break;
case "E":
modifybook();// E修改图书
break;
case "F":
addStudent(); // F.添加学生
break;
case "G":
findstudentbyname();// G.查找学生
break;
case "H":
showAllStudent(); // H.查看所有学生
break;
case "I":
modifystudent();// I.修改学生
break;
case "J":
deletestudentsbyname();// J.删除学生
break;
case "K":
Borrow(); // K.借阅功能
break;
case "L":
showBorrow(); // L.查看借阅信息
break;
case "Q":
System.out.println("系统已经退出,感谢您的使用!");// Q.终止程序,退出系统
scanner.close(); // 关闭输入流scanner
exit = false;
break;
default:
System.out.println("输入不合法!重新输入!");
break;
}
}
}

private static String showMenu() {
System.out
.println("\n=============================  XX图书管理系统  ===========================");
System.out.print("A.添加图书\t");
System.out.print("B.查找图书\t");
System.out.print("C.查看所有图书\t");
System.out.print("D.删除图书\t");
System.out.println("E.修改图书\t");
System.out.print("F.添加学生\t");
System.out.print("G.查找学生\t");
System.out.print("H.查看所有学生\t");
System.out.print("I.修改学生\t");
System.out.println("J.删除学生\t");
System.out.print("K.图书借阅\t");
System.out.print("L.借阅信息\t");
System.out.print("Q.退出系统\t");
System.out.println("提示:不区分大小写");
System.out.println("============================   请选择操作类型  ============================\t");

String opt = null;
try {
sc = new Scanner(System.in);
opt = sc.next();
} catch (Exception e) {
System.out.println("请输入正整数!");
}
return opt;
}



/* E.修改图书 */
private static void modifybook() {

System.out.println("请输入要修改的图书名:");
String name = scanner.next();
Book bks = null;
for (Book bk : books) {
if (bk.getName().equals(name)) {
bks = bk;
break;
}
}
if (bks != null) {
System.out.println("请输入新的书名:");
String newName = scanner.next();
System.out.println("请输入书的作者:");
String newauthor = scanner.next();
System.out.println("请输入书的价格:");
int newprice = scanner.nextInt();
bks.setName(newName);
bks.setAuthor(newauthor);
bks.setPrice((float) newprice);
// books.add(bks);//注释掉防止重复
System.out.println("信息修改成功!");
} else {
System.out.println("没有找到该图书信息");
}
// showMenu();
}

/* F.添加学生 */
private static void addStudent() {
try {
Student stu = new Student();
stu.setNum(students.size() + 1);// 自动赋值学生ID
System.out.println("请输入要加入'学生'的名称:\t");
String name = scanner.next();
stu.setName(name);
System.out.println("请输入要加入'学生'的年龄:\t");
int age = scanner.nextInt();
stu.setAge(age);
System.out.println("请输入要加入'学生'的性别(male/female):\t");
String gender = scanner.next();
stu.setGender(gender);
System.out.println("添加成功!");
students.add(stu);
} catch (Exception e) {
// e.printStackTrace();
System.out.println("输入不合法,请输入整数");
}
}

/* G.查找学生 */

private static void findstudentbyname() {
System.out.println("请输入要查询的学生姓名:\t");
String name = scanner.next();
boolean found = false;
try {
for (int t = 0; t < students.size(); t++) {
if (students.get(t).getName().equals(name)) {
found = true;
System.out.println("已经找到" + name + "这学生!");
System.out.println("\t姓名:" + students.get(t).getName()
+ "\t年龄:" + students.get(t).getAge() + "\t性别:"
+ students.get(t).getGender());
}
} catch (Exception e) {

System.out.println("未找到'" + name);
// TODO: handle exception
}
if (!found) {
System.out.println("未找到'" + name);
}

}

/* H.查看所有学生 */
private static void showAllStudent() {
System.out.println("已经有" + students.size() + "个学生加入系统!");
for (int i = 0; i < students.size(); i++) {
System.out.println("id:" + students.get(i).getNum() + "\t姓名:"
+ students.get(i).getName() + "\t年龄:"
+ students.get(i).getAge() + "\t性别:"
+ students.get(i).getGender());
}
}

/* I.修改学生 */
private static void modifystudent() {

System.out.println("请输入要修改的学生姓名:");
String name = scanner.next();
Student newstudent = null;
for (Student newstu : students) {
if (newstu.getName().equals(name)) {
newstudent = newstu;
break;
}
}
if (newstudent != null) {
System.out.println("请输入新的姓名:");
String newName = scanner.next();
System.out.println("请输入年龄:");
int newage = scanner.nextInt();
System.out.println("请输入性别:");
String newgender = scanner.next();
newstudent.setName(newName);
newstudent.setAge((int) newage);
newstudent.setGender(newgender);
// students.add(newstudent);
System.out.println("信息修改成功!");
} else {
System.out.println("没有找到该学生信息");
}
// showMenu();
}

/* J.删除学生 */
private static void deletestudentsbyname() {
System.out.println("请输入要删除学生的姓名:");
String name = scanner.next();
Student deletestudent = null;
for (Student delstu : students) {
if (delstu.getName().equals(name)) {
deletestudent = delstu;
break;
}
}
if (deletestudent != null) {
students.remove(deletestudent);
System.out.println("删除成功!");
} else {
System.out.println("没有找到该学生信息");
}
// showMenu();
}

/* K.图书借阅 */
private static void Borrow() {
System.out.println("请输入您的学生姓名:\t");
String studentname = scanner.next();
boolean rep = false;
for (int i = 0; i < students.size(); i++) {
if (studentname.equals(students.get(i).getName())) {
rep = true;
break;
} else {
rep = false;
}
}
if (rep) {
System.out.println("输入正确,已经找这个学生!");
for (;;) {
System.out.println("请选择操作类型:1:借书\t2:还书\t3:退出");
String choose = scanner.next();
switch (choose) {
case "1":
System.out.println("请输入您要借阅的图书名称:\t");
String bookname1 = scanner.next();
int bol = 0;
for (int i = 0; i < books.size(); i++) {
if (bookname1.equals(books.get(i).getName())
&& books.get(i).getInfo().equals("未借出")) {
System.out.println("您已经成功借到" + bookname1);
books.get(i).setInfo("已经借出");
Borrow brw = new Borrow();
brw.setBookname(bookname1);
brw.setStudentname(studentname);
brw.setDate(new Date());
brw.setNum(String.valueOf(Integer.valueOf((int) (Math.random() * 10000000))));
brw.setInfo("已经借出!");
borrows.add(brw);
bol = 0;
break;
} else {
++bol;
continue;
}
}
if (bol >= 1) {
System.out.println(bookname1 + "未找到图书或者已经被借出!");
}
break;
case "2":
System.out.println("请输入您要归还的图书名称:\t");
String bookname2 = scanner.next();
int bol1 = 0;
for (int i = 0; i < borrows.size(); i++) {
if (bookname2.equals(borrows.get(i).getBookname())
&& books.get(i).getInfo().equals("已经借出")) {
System.out.println("已经查找" + bookname2 + "这本书被"
+ borrows.get(i).getStudentname() + "借走");
books.get(i).setInfo("未借出");
System.out.println(bookname2 + "归还成功!");
for (int j = 0; j < borrows.size(); j++) {
if (bookname2.equals(borrows.get(j)
.getBookname())
&& borrows.get(j).getInfo()
.equals("已经借出!")) {
borrows.get(j).setInfo("已经归还!");
}
}
break;
} else {
++bol1;
}
}
if (bol1 >= 1) {
System.out
.println("没有找到" + bookname2 + "这本书,或者这本书没有借出");
}
break;
case "3":
return;// 退出函数
}
}
} else {
System.out.println("输入错误,不存在这个学生");
}
}

/* L.查看借阅信息 */
private static void showBorrow() {
if (borrows.size() == 0) {
System.out.println("暂时没有借出的书籍!");
} else {
for (int i = 0; i < borrows.size(); i++) {
System.out.println("借阅号:" + borrows.get(i).getNum() + "\t借阅者:"
+ borrows.get(i).getStudentname() + "\t借阅书名:"
+ borrows.get(i).getBookname() + "\t借阅日期:"
+ borrows.get(i).getDate() + "\t归还状态:"
+ borrows.get(i).getInfo());
}
}
}
}

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约