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()); } } } }
|
|
来自: weixiaofeng01 > 《Bookdemo》