对前面数组与方法的一次练习

package zhaotong.It;
/*
   图书管理系统
 */

import java.util.Scanner;

public class BookManager {
    public static void main(String[] args) {
        //准备工作

        //创建Scanner对象
        Scanner sc = new Scanner(System.in);

        //准备储存书籍信息的一维数组
        String[] bookName = new String[6];//图书名称
        int[] state = new int[6];//状态:  0:未借出   1.已借出
        int[] day = new int[6];//借出天数
        int[] time = new int[6];//借出的总次数
        //String[][] bookName=new String[4][6];


        //准备已有数籍信息
        bookName[0] = "遮天";
        state[0] = 1;
        day[0] = 5;
        time[0] = 8;

        bookName[1] = "完美世界";
        state[1] = 0;
        day[1] = 0;
        time[1] = 5;

        bookName[2] = "神墓";
        state[2] = 0;
        day[2] = 0;
        time[2] = 16;


        boolean flag = true;


        do {
            System.out.println("欢迎访问辰东的图书管理系统");
            System.out.println("**********************************");
            System.out.println("请根据提示输入相应选项进入菜单");
            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("请选择(1-6)");
            //接收用户输入数据
            int num = sc.nextInt();
            int x = 1;

            out:
            switch (num) {
                case 1://图书添加功能
                    //提示用户输入要添加的书名
                    System.out.println("请输入要添加的书名:");
                    String bookName1 = sc.next();
                    String addName = addBook(bookName, bookName1);
                    System.out.println(addName);
                    while (x != 0) {
                        System.out.println("请输入0返回:");
                        x = sc.nextInt();
                        if (x == 0) {
                            break out;
                        }
                    }
                case 2://图书查看功能
                    lookBooks(bookName, state, day, time);
                {
                    while (x != 0) {
                        System.out.println("请输入0返回:");
                        x = sc.nextInt();
                        if (x == 0) {
                            break out;
                        }
                    }
                }
                case 3://图书删除功能
                    System.out.println("请输入您要删除的书名:");
                    String bookName2 = sc.next();
                    String deleteName = deleteBook(bookName,state,bookName2);
                    System.out.println(deleteName);
                    while (x != 0) {
                        System.out.println("请输入0返回:");
                        x = sc.nextInt();
                        if (x == 0) {
                            break out;
                        }

                    }



                case 4://图书借出功能
                    System.out.println("请输入您要借的书名:");
                    String bookName3=sc.next();
                    String borrowName=borrowBook(bookName,state,day,time,bookName3);
                    System.out.println(borrowName);
                    while (x != 0) {
                        System.out.println("请输入0返回:");
                        x = sc.nextInt();
                        if (x == 0) {
                            break out;
                        }
                    }




                case 5://图书归还功能
                    System.out.println("请输入您要还的书名:");
                    String bookName4 = sc.next();
                    String giveBackName = giveBackBook(bookName,state,day,bookName4);
                    System.out.println(giveBackName);
                    while (x != 0) {
                        System.out.println("请输入0返回:");
                        x = sc.nextInt();
                        if (x == 0) {
                            break out;
                        }
                    }

                case 6:
                    System.out.println("感谢使用,拜拜");
                    flag = false;
                    break;
                default:
                    System.out.println("您输入的是无效数据");


            }


        } while (flag);


    }

    /**
     * 图书查看方法
     *
     * @param bookName  图书名称
     * @param state    状态
     * @param day      借出天数
     * @param time     借出次数
     */
    public static void lookBooks(String[] bookName, int[] state, int[] day, int[] time) {
        System.out.println("编号" + "\t" + "图书名称" + "\t\t" + "状态" + "\t\t" + "借出天数" + "\t\t" + "借出次数" + "\t\t");
        for (int i = 0; i < bookName.length; i++) {
            if (bookName[i] != null) {
                System.out.print((i + 1) + "\t");
                System.out.print(bookName[i] + "\t\t");
                if (state[i] == 1) {
                    System.out.print("以借出" + "\t\t");
                } else {
                    System.out.print("未借出" + "\t\t");
                }
                System.out.print(day[i] + "天" + "\t\t");
                System.out.print(time[i] + "次" + "\t\t");
            }
            System.out.println();
        }
    }

    /**
     * 图书添加方法
     *
     * @param bookName 添加图书的数组
     * @param name     添加图书的名称
     * @return 添加是否成功
     */
    public static String addBook(String[] bookName, String name) {
        for (int i = 0; i < bookName.length; i++) {
            if (bookName[i] == null) {
                bookName[i] = name;
                return "图书添加成功";
            }
        }
        return "书架已满,添加失败";
    }

    /**
     * 图书删除方法
     *
     * @param bookName 删除图书的数组
     * @param state    图书的状态
     * @param name     删除图书的名字
     * @return 删除是否成功
     */


    public static String deleteBook(String[] bookName, int[] state, String name) {
        for (int i = 0; i < bookName.length; i++) {
            if (bookName[i] != null && bookName[i].equals(name)) {
                if (state[i] == 0) {
                    bookName[i] = null;
                    return "删除成功";
                } else {
                    return "该书以借出,操作失败";
                }
            }
        }
        return "您输入的书名没有";
    }

    /**
     * 图书借阅方法
     * @param bookName   放书名的数组
     * @param name        借阅的书名
     * @param state       图书的状态
     * @param day          借出天数
     * @param time         借出次数
     * @return         借书是否成功
     */

    public static String borrowBook(String[] bookName,  int[] state, int[] day, int[] time,String name){
        for (int i = 0;i< bookName.length;i++){
            if (bookName[i] != null && bookName[i].equals(name)){
                if (state[i]==0){
                    state[i]=1;
                    day[i]=1;
                    time[i]=time[i]+1;
                    return "借书成功";
                }else{
                    return "您借的书已被借出";

                }
            }
        }
        return "您借的书不存在";

    }


    /**
     * 图书归还方法
     * @param bookName    放书名的数组
     * @param state       图书的状态
     * @param day          借出天数
     * @param name          归还的名字
     * @return          归还是否成功
     */


    public static String giveBackBook(String[] bookName,int[] state,int[] day,String name){
        for (int i=0;i< bookName.length;i++){
            if (bookName[i] != null && bookName[i].equals(name)){

                if (state[i] == 1){
                    state[i]=0;
                    day[i]=0;
                    return "还书成功";
                }else{
                    return "该书未被借出";
                }

            }
        }
        return "您的书不是我们的";
    }
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值