--自定义异常
package org.books;
public class InfoErr extends Exception{
public InfoErr(String message){
super(message);
}
}
--定义异常的详细信息
package org.books;
import java.util.Scanner;
public class ExceptionDemo {
ThrowsDemo[] demo ={new BooksInfo(1,"语文","阿迷"),new BooksInfo(2,"悲惨世界","雨果"),new BooksInfo(3,"java基础","sun"),new BooksInfo(4,"Mysql","Dave") };
public void Exception() throws InfoErr{
System.out.println("请选择查找图书的方式:1.按照书名进行查找 2.按照作者进行查找" );
Scanner input = new Scanner(System.in); //提供在控制台进行输入功能
int number= input.nextInt();
if(number!=1&&number!=2){//判断查询条件
throw new InfoErr("您输入的信息有误!请按提示重新输入!!");
}else{
if(number==1){
System.out.println("请输入您找的书名:");
String name= input.next();
//对控制台输入的书名进行判断
if(name=="语文"||"语文".equals(name)){
// System.out.println(demo[1].author);
System.out.println("数的序号为:"+demo[0].no+" 书名为:"+demo[0].bookName+" 作者为:"+demo[0].author);
}
else if(name=="悲惨世界"||"悲惨世界".equals(name)){
System.out.println("数的序号为:"+demo[1].no+" 书名为:"+demo[1].bookName+" 作者为:"+demo[1].author);
}
else if(name=="java基础"||"java基础".equals(name)){
System.out.println("数的序号为:"+demo[2].no+" 书名为:"+demo[2].bookName+" 作者为:"+demo[2].author);
}
else if(name=="Mysql"||"Mysql".equals(name)){
System.out.println("数的序号为:"+demo[3].no+" 书名为:"+demo[3].bookName+" 作者为:"+demo[3].author);
}
else if(name !=demo[0].bookName&& name!=demo[1].bookName&& name!=demo[2].bookName&& name!=demo[3].bookName){
throw new InfoErr("您查找的书名不存在!请重新输入!");
}
}
if(number==2){
System.out.println("请输入您找的作者名:");
String auName= input.next();
if(auName=="阿迷"||"阿迷".equals(auName)){
// System.out.println(demo[1].author);
System.out.println("数的序号为:"+demo[0].no+" 书名为:"+demo[0].bookName+" 作者为:"+demo[0].author);
}
else if(auName=="雨果"||"雨果".equals(auName)){
System.out.println("数的序号为:"+demo[1].no+" 书名为:"+demo[1].bookName+" 作者为:"+demo[1].author);
}
else if(auName=="sun"||"sun".equals(auName)){
System.out.println("数的序号为:"+demo[2].no+" 书名为:"+demo[2].bookName+" 作者为:"+demo[2].author);
}
else if(auName=="Dave"||"Dave".equals(auName)){
System.out.println("数的序号为:"+demo[3].no+" 书名为:"+demo[3].bookName+" 作者为:"+demo[3].author);
}else if(auName!=demo[0].author&& auName!=demo[0].author&&auName!=demo[1].author&&auName!=demo[2].author&&auName!=demo[3].author){
throw new InfoErr("您查找的作者不存在!请重新输入!");
}
}
}
}
}
--实现
package org.books;
import java.util.InputMismatchException;
import java.util.Scanner;
public class Action {
public static void main(String[] args) {
ExceptionDemo ex = new ExceptionDemo();
do{
try {
ex.Exception();
Scanner input = new Scanner(System.in); //提供在控制台进行输入功能
int number= input.nextInt();
} catch (InfoErr e) {
// TODO Auto-generated catch block
System.out.println(e.getMessage());
}catch(Exception e){//判断控制台输入的类型是否正确
System.out.println("您输入的信息有误!请按提示重新输入!");
}
}while(true);
}
}
--运行结果
![图片描述][1]
点击查看更多内容
1人点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦