亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

圖書查詢系統(java異常學習)

標簽:
Java

图书类:

public class Book {
    String name = "";
    int id = -1;
    public Book (int id, String name) {
        this.id = id;
        this.name = name;
    }
    public String getName() {
        return name;
    }
    public int getId() {
        return id;
    }
}

图书异常类:

public class BookException extends Exception {
        public BookException () {}
        public BookException (String message) {
            super (message);
        }
}

函数体:

import java.util.*;

public class Initial {
    public int getCommand () throws BookException {
        Scanner input = new Scanner (System.in);
        int command;
        try {
            command = input.nextInt(); 
        } catch (Exception e) {
            throw new BookException("错误命令异常");
        }
        if (command < 0  command >2) {
            throw new BookException("错误命令异常");
        }
        return command;
    }

    public Book searchFromName  (Book books[]) throws BookException {
        Scanner input = new Scanner (System.in);
        System.out.println ("请输入图书名称:");
        String name = input.next();
        for (int i = 0; i < books.length; i++) {
            if (books[i].getName().equals(name)) {
                return books[i];
            }
        }
        throw new BookException ("图书不存在异常");
    }

    public Book searchFromID  (Book books[]) throws BookException {
        Scanner input = new Scanner (System.in);
        System.out.println ("请输入图书序号:");
        int id;
        try {
            id = input.nextInt();
        } catch (Exception e) {
            throw new BookException("错误命令异常");
        } 
        for (int i = 0; i < books.length; i++) {
            if (books[i].getId() == id) {
                return books[i];
            }
        }
        throw new BookException ("图书不存在异常");
    }

    public void startSearch () {
        Book books [] = {new Book (1, "高数"),
                new Book (2, "线代"),
                new Book (3, "C语言"),
                new Book (4, "Java"),};
        int command;
        Book target;
        while (true) {
            System.out.println ("输入命令:0-退出;1-按照名称查找图书;2-按照序号查找图书");
            try { 
                command = getCommand(); 
            } catch (Exception e) {
                System.out.println (e.getMessage());
                continue;
            }
            switch (command) {
            case 0:
                return;
            case 1:
                try {
                    target = searchFromName (books);
                } catch (Exception e) {
                    System.out.println (e.getMessage());
                    continue;
                }
                System.out.println ("查找成功!图书序号:"+target.getId()+"\t图书名称:" +target.getName());
                break;
            case 2:
                try {
                    target = searchFromID (books);
                }  catch (Exception e) {
                    System.out.println (e.getMessage());
                    continue;
                }
                System.out.println ("查找成功!图书序号:"+target.getId()+"\t图书名称:" +target.getName());
                break;
            }   
        }
    }

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Initial init = new Initial ();
        System.out.println ("******欢迎进入图书查询系统!******");
        init.startSearch();
        System.out.println ("******谢谢使用,再见!******");
    }

}
點擊查看更多內容
9人點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
Linux系統工程師
手記
粉絲
0
獲贊與收藏
20

關注作者,訂閱最新文章

閱讀免費教程

感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消