zoukankan      html  css  js  c++  java
  • 图书管理系统(2019年10月12日)

    图书管理系统
    
    package day05;
    
    import java.util.Scanner;
    
    /**
    * 图书登录系统
    * 
    * @author 张宇星
    *
    */
    public class Demo01 {
    
    public static void main(String[] args) {
    // 定义一个二位数组user存放用户的名字和密码
    String[][] user = new String[10][2];// 先默认可以放入10个人的信息
    String[][] books = new String[10][3];// 先默认存放是十本书
    // 初始换产生两个数据在user数组中
    user[0][0] = "张宇星";
    user[0][1] = "zyx";
    user[1][0] = "王成博";
    user[1][1] = "wcb";
    user[2][0] = "aa";
    user[2][1] = "bb";
    user[3][0] = "cc";
    user[3][1] = "dd";
    // 初始化产生三组数据在books中
    books[0][0] = "001";
    books[0][1] = "语文";
    books[0][2] = "1元";
    books[1][0] = "002";
    books[1][1] = "数学";
    books[1][2] = "2元";
    books[2][0] = "003";
    books[2][1] = "英语";
    books[2][2] = "3元";
    // 提示用户按照要求输入操作
    while (true) {
    System.out.println("*******************欢迎登陆图书管理系统********************");
    System.out.println("1.注册 " + "	" + "2.登陆 " + "	" + "3.退出 " + "	");
    Scanner input = new Scanner(System.in);
    int i = input.nextInt();
    if (i == 1) {
    register(user);
    } else if (i == 2) {
    login(user, books);
    } else if (i == 3) {
    break;
    }
    }
    }
    
    // 注册方法
    public static void register(String[][] user) {
    Scanner input = new Scanner(System.in);
    // 提示用户输入用户名
    System.out.println("请输入注册用户名:");
    String name = input.next();
    // 将用户输入的和数组中本来的拿来比较,如果有一致的,提示用户重新输入
    boolean flag = false;
    for (int i = 0; i < user.length; i++) {
    if (name.equals(user[i][0])) {
    flag = true;
    break;
    }
    }
    if (flag) {
    System.out.println("您注册的名字存在,请重新注册");
    register(user);
    
    } else {
    // System.out.println("等待下一步");
    }
    // 提示用户输入密码
    System.out.println("请输入注册密码:");
    String password = input.next();
    
    // 找到用户数组中空闲的位置的下标
    int temp = 0;
    for (int i = 0; i < user.length; i++) {
    if (user[i][0] == null) {
    temp = i;
    break;
    
    } else {
    }
    }
    // 插入数据
    user[temp][0] = name;
    user[temp][1] = password;
    // 提示用户注册成功
    System.out.println("注册成功!!!");
    }
    
    // 登录的方法
    public static void login(String[][] user, String[][] book) {
    // 提示用户输入用户名
    Scanner input = new Scanner(System.in);
    System.out.println("请输入登录用户名:");
    String name = input.next();
    // 提示用户输入密码
    System.out.print("请输入登录密码:");
    String password = input.next();
    // 检查账号和密码是否和之前一样
    // System.out.println(name+"...."+password);
    
    boolean flag = false;
    for (int i = 0; i < user.length; i++) {
    // System.out.println("--------------"+i);
    if (name.equals(user[i][0]) && password.equals(user[i][1])) {
    flag = true;
    break;
    }
    }
    if (flag) {
    System.out.println("登录成功,进行图书操作!!!");
    book(book);
    } else {
    System.out.println("登录失败,请重新登录");
    login(user, book);
    }
    
    }
    
    public static void book(String[][] book) {
    
    while (true) {
    System.out.println("********欢迎进入书籍管理系统***********");
    System.out.println("1.查看书籍 2.书籍添加 3.书籍删除 4.修改 5.退出");
    Scanner input = new Scanner(System.in);
    int a = input.nextInt();
    if (a == 1) {
    showBook(book);
    } else if (a == 2) {
    addBook(book);
    } else if (a == 3) {
    deleteBook(book);
    } else if (a == 4) {
    changeBook(book);
    } else if (a == 5) {
    break;
    }
    }
    }
    
    // 查看书籍方法
    private static void showBook(String[][] book) {
    // 寻找最后一个数的下标
    int temp = 0;
    for (int i = 0; i < book.length; i++) {
    if (book[i][0] == null) {
    temp = i;
    break;
    
    } else {
    }
    }
    // System.out.println(temp);
    // 遍历book数组,并输出
    for (int i = 0; i < temp; i++) {
    for (int j = 0; j < book[i].length; j++) {
    System.out.print(book[i][j] + "	");
    }
    System.out.println();
    }
    
    }
    
    // 添加书籍
    private static void addBook(String[][] book) {
    
    Scanner input = new Scanner(System.in);
    // 提示用户书籍的编号
    System.out.println("请输编号:");
    String number = input.next();
    // 将用户输入的编号和数组中本来的拿来比较,如果有一致的,提示用户重新输入
    boolean flag = false;
    for (int i = 0; i < book.length; i++) {
    if (number.equals(book[i][0])) {
    flag = true;
    break;
    }
    }
    if (flag) {
    System.out.println("您添加的书籍已存在,请重新添加");
    register(book);
    
    } else {
    }
    // 提示用户输入后面的内容
    System.out.println("请输入书籍名字:");
    String bookName = input.next();
    System.out.println("请输入书籍价格:");
    String price = input.next();
    // 找到用户数组中空闲的位置的下标
    int temp = 0;
    for (int i = 0; i < book.length; i++) {
    if (book[i][0] == null) {
    temp = i;
    break;
    
    } else {
    }
    }
    // 插入数据
    book[temp][0] = number;
    book[temp][1] = bookName;
    book[temp][2] = price;
    // 提示用户注册成功
    System.out.println("添加成功!!!");
    
    }
    
    // 删除书籍的方法
    private static void deleteBook(String[][] book) {
    System.out.println("请输入需要删除的书的编号");
    Scanner input = new Scanner(System.in);
    String temp = input.next();
    // 找一下最后一本书在数组中的下标 定义为temp1
    int temp1 = 0;
    for (int i = 0; i < book.length; i++) {
    if (book[i][0] == null) {
    temp1 = i;
    break;
    
    } else {
    }
    }
    // 找到需要删除的那个编号的下标
    int index = 0;
    boolean flag = false;
    for (int i = 0; i < book.length; i++) {
    if (temp.equals(book[i][0])) {
    flag = true;
    index = i;
    break;
    }
    }
    if (flag) {
    // 修改数组中的元素,将后面的值往前挪一个位置
    for (int i = index; i < temp1; i++) {
    book[i][0] = book[i + 1][0];
    book[i][1] = book[i + 1][1];
    }
    
    } else {
    System.out.println("请重新输入您需要删除的书的编号");
    deleteBook(book);
    }
    
    }
    
    // 修改书籍的方法
    private static void changeBook(String[][] book) {
    
    System.out.println("请输入需要修改的书的编号");
    Scanner input = new Scanner(System.in);
    String temp = input.next();
    // 找一下最后一本书在数组中的下标 定义为temp1
    int temp1 = 0;
    for (int i = 0; i < book.length; i++) {
    if (book[i][0] == null) {
    temp1 = i;
    break;
    
    } else {
    }
    }
    // 找到需要修改的那个编号的下标
    int index = 0;
    boolean flag = false;
    for (int i = 0; i < book.length; i++) {
    if (temp.equals(book[i][0])) {
    flag = true;
    index = i;
    break;
    }
    }
    if (flag) {
    // 获取用户需要修改之后的内容
    System.out.println("请输入新的名称:");
    String temp3 = input.next();
    System.out.println("请输入新的价格:");
    String temp4 = input.next();
    // 修改下标为index的数组的内容
    book[index][1] = temp3;
    book[index][2] = temp3;
    System.out.println("修改成功,赶快去查看");
    } else {
    System.out.println("请重新输入您需要修改的书的编号");
    changeBook(book);
    }
    
    }
    }
  • 相关阅读:
    python学习(20) 网络编程
    MySQL与mongodb数据库备份与恢复
    Java(一)——Ubuntu18.04下Java环境配置
    安全服务——CVE中CVSS相关指标介绍
    爬虫(十一)—— 请求库(三)pypeteer请求库
    爬虫(十)—— scrapy框架
    抓包工具Fiddler
    爬虫(九)—— 爬虫高性能
    爬虫(八)—— 存储库(三)MySQL存储库
    爬虫(七)—— 存储库(二)Redis存储库
  • 原文地址:https://www.cnblogs.com/Starlets/p/11679678.html
Copyright © 2011-2022 走看看