ITPub博客

首页 > IT职业 > IT职场 > JAVA入门第三季1-9 借书系统手记

JAVA入门第三季1-9 借书系统手记

IT职场 作者:at_1 时间:2021-09-09 09:05:21 0 删除 编辑

自定异常NameException 图书名称异常

package com.book;

public class NameException extends Exception {
    public NameException() {

    }

    public NameException(String message) {
        super(message);

    }
}

自定异常NumException 图书序号异常

package com.book;

public class NumException extends Exception {
    public NumException() {

    }

    public NumException(String message) {
        super(message);

    }
}

Book代码

package com.book;

import java.util.InputMismatchException;
import java.util.Scanner;

public class Book {
    static Scanner input = new Scanner(System.in);
    static String[] bookname = new String[] { "论语", "C#", "JSP", "HTML", "JAVA" };
    static boolean flag = true;

    public static void main(String[] args) {
        System.out.println("欢迎来到借书系统O~O");
        System.out.println("图书列表:");
        System.out.println("序号" + "t" + "书名");
        Book bk = new Book();
        int i = 0;
        for (String BK : bookname) {
            System.out.println(i + 1 + "t" + BK);
            i++;
        }

        while (flag) {
            try {
                System.out.println("输入命令:1-按照名称查找图书;2-按照序号查找图书!");
                Scanner input = new Scanner(System.in);
                int a = input.nextInt();
                String si = input.nextLine();
                if (a == 1) {
                    try {
                        bk.ex1();
                        flag = false;
                    } catch (NameException e) {
                        System.out.println(e.getMessage());
                    }
                } else if (a == 2) {
                    try {
                        bk.ex2();
                        flag = false;
                    } catch (Exception e) {
                        System.out.println(e.getMessage());
                    }
                } else {
                    System.out.println("序号输入错误!");
                }
            } catch (InputMismatchException e) {
                System.out.println("命令输入错误!请根据提示输入数字命令!");

            }
        }
    }

    public void ex1() throws NameException {
        System.out.println("输入图书名称:");
        String b = Book.input.next();
        boolean p = false;
        for (String bb : bookname) {
            if (b.equals(bb)) {
                p = true;
            }
        }
        if (p) {
            System.out.println("book:" + b);
        } else {
            throw new NameException("图书不存在!");
        }
    }

    public void ex2() throws NumException {
        System.out.println("输入图书序号:");
        int c = Book.input.nextInt();

        if (c >= 1 && c 

写了一晚上。。不容易啊 小白入门努力学习中 希望大佬们多给意见 如何优化

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/1817/viewspace-2799188/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-07-26

  • 博文量
    265
  • 访问量
    12479