____途
2018-02-11 15:14:52浏览 2634
/*属性类*/
public class BookBen {
public int id;
public String name;
public BookBen(){
}
public BookBen(int id,String name){
this.id=id;
this.name=name;
}
@Override
public String toString() {
return "[书籍编号:" + id + ", 书籍名称:" + name + "]";
}
}
/*main方法*/
public class ExcMain {
static int query;//查询方式
static String bookName;//书名
static int bookId;//通过书的id查询
Scanner scanner = new Scanner(System.in);
BookBen []book= {new BookBen(1,"西游记"),new BookBen(2,"红楼梦"),new BookBen(3,"三国演义"),new BookBen(4,"水浒传")};
public static void main(String[] args) {
ExcMain excmain = new ExcMain();
try {
excmain.inquiryMode();
} catch (Exception e) {
e.printStackTrace();
}
}
}
/*选书方式*/
public void inquiryMode(){
// TODO Auto-generated method stub
try {
System.out.println("请选择选书方式:1.通过book id,2.通过book name");
query=scanner.nextInt();//获取用户输入的选书方式
if(query==1){//==1就通过id选书
queryId();
}else if(query==2){//==2就通过name选书
queryName();
}else{//都不是就抛出异常
throw new Exception("您的输入不正确!");
}
} catch (Exception e) {
e.printStackTrace();
}
}
/*id查询方式*/
public void queryId() throws Exception{
try {
//展示有哪些书籍
for (BookBen bookben : book) {
System.out.println(bookben);
}
System.out.println("请输入你要借的书的编号");
bookId=scanner.nextInt();//获取输入的书籍编号
System.out.println("输入bookID=="+bookId);//打印输出
for (int i = 0; i < book.length; i++) {//循环数组
if(book[i].id==bookId){//比较是否存在该输入的书籍id
System.out.println("你的查询信息如下:\n "+"*书籍编号:"+book[i].id+"*书籍名称:"+book[i].name);
return;
}
}
//遍历数组不存在该书籍id就抛出异常
throw new Exception("你输入的书籍id不存在,请重新输入");
} catch (Exception e) {
e.printStackTrace();
}
}
/*name查询方式*/
public void queryName() throws Exception{
try {
//展示有哪些书籍
for (BookBen bookben : book) {
System.out.println(bookben);
}
System.out.println("请输入你要借的书的名称");
bookName=scanner.next();//获取输入的书籍名称
System.out.println("输入bookName=="+bookName);//打印输出
for (int i = 0; i < book.length; i++) {//循环遍历书籍数组
if(book[i].name.equals(bookName)){//比较输入的书籍名称是否存在
System.out.println("你的查询信息如下:\n "+"*书籍编号:"+book[i].id+"*书籍名称:"+book[i].name);
return;
}
}
//遍历数组不存在该书籍name就抛出异常
throw new Exception("你输入的书籍name不存在,请重新输入");
} catch (Exception e) {
e.printStackTrace();
}
}
热门评论
你不是已经处理了异常为什么还要抛出异常呢?
要是我选择后随意输入呢,是不是要提示输入错误呢,而不是说没有该书