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

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

java入門第三季第一章編程練習——模擬借書系統

標簽:
Java

首先是 三个自定义异常
public class CountErrorException extends Exception{
public CountErrorException(){
}
public CountErrorException(String message) {
super(message);
}
}

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

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

然后是Book.java
public class Book {
private int number;
private String name;
public int getNumber() {
return number;
}
public void setNumber(int number) {
this.number = number;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Book(int number,String name){
this.number=number;
this.name=name;
}
}

最后是实现类
import java.util.Scanner;

public class Go {
public boolean getNameFound(Book[] books, Scanner scanner)
throws NoNameException, NoNumberException, CountErrorException {
try {
String name = scanner.next();
boolean a=true;//判断是否需要抛出异常
//遍历查看有无此书名的书
for (Book book : books) {
if (book.getName().equals(name)) {
System.out.println("book:" + book.getName());
a=false;
}
}
if (a) {
throw new NoNameException("图书不存在!!!");
}
} catch (NoNameException e) {
System.out.println(e.getMessage());
return true;
}
return false;
}
public boolean getNumberFound(Book[] books, Scanner scanner) throws NoNameException, NoNumberException {
try {
int number = scanner.nextInt();
boolean a=true;//判断是否需要抛出异常
for (Book book : books) {
if (book.getNumber() == number) {
System.out.println("book:" + book.getName());
a=false;
}
}
if (a) {
throw new NoNumberException("图书不存在!!");
}
} catch (NoNumberException e) {
System.out.println(e.getMessage());
return true;
}
return false;
}
public static void main(String[] args) throws NoNameException, NoNumberException, CountErrorException {
Scanner scanner = new Scanner(System.in);
Go go = new Go();
Book[] books = new Book[] { new Book(1, "语文"), new Book(2, "数学"), new Book(3, "英语") };
boolean result = false;
while (true) {
try {
System.out.println("输入命令: 1-按照名称查找图书 ; 2-按照序号查找图书");
String b = scanner.next();
if (!b.equals("1")&& !b.equals("2")) {
//抛出错误命令异常
throw new CountErrorException("命令输入错误!请根据提示输入数字");
}
// 按照名称查找
if (b.equals("1")) {
System.out.println("输入图书名称:");
result = go.getNameFound(books, scanner);
}
// 按照序号查找
if (b.equals("2")) {
System.out.println("输入图书序号:");
result = go.getNumberFound(books, scanner);
}
if (result) {
//结束本次结束操作,返回第一部
continue;
}
break;
} catch (CountErrorException e) {
System.out.println(e.getMessage());
continue;
}
}
}

}

點擊查看更多內容
1人點贊

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

評論

作者其他優質文章

正在加載中
JAVA開發工程師
手記
粉絲
1
獲贊與收藏
4

關注作者,訂閱最新文章

閱讀免費教程

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

100積分直接送

付費專欄免費學

大額優惠券免費領

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

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

幫助反饋 APP下載

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

公眾號

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

舉報

0/150
提交
取消