交作业了!!!!!!

来源:1-9 经验总结

慕慕309619

2015-01-07 16:32

import java.util.*;
public class Library {
    /*
     * totalBooks  存储图书的数组
     * scan 初始化输入类对象
     */
	String[]  totalBooks = {"高等数学","计算机英语","JAVA编程","PHP面向对象","C++经典实例","高性能MySQL","JavaScript前端开发语言","jQuery高级教程"};
	Scanner scan = new Scanner(System.in);
	
	/*
	 * bookname 输入图书 名称
	 * 把数组转换成字符串 用indexOf()方法 查找返回 索引 如果不存在返回 int -1;
	 * 如果查找不到图书 则抛出图书不存在异常 接着调用welcome方法 重新输入
	 */
	
	public void bookName(){
		String bookname = scan.next();
        String books = Arrays.toString(totalBooks);
        try {
        	if(books.indexOf(bookname) != -1){
            	System.out.println("book:"+ bookname);
            }else{
            	throw new Exception("图书不存在");
            }
		} catch (Exception e) {
			System.out.println("图书不存在!!!");
			this.welcome();
		}
     
	}
	
	/*
	 * bookNum 输入图书序号
	 * 判断序号如果小于1 或者 大于总图书的数组长度 则抛出异常;
	 * 如果查找不到图书 则抛出图书不存在异常 接着调用welcome方法 重新输入
	 */
	
	public void bookNum(){
		int booknum = scan.nextInt();
        try {
        	if(booknum < 1 || booknum > totalBooks.length){
            	throw new Exception();
            }else{
            	System.out.println("book:"+totalBooks[booknum-1]);
            }
		} catch (Exception e) {
			System.out.println("图书不存在!!!");
			this.welcome();
		}
	}
	
	
	/*
	 * input 输入
	 * 输入1 则按图书名称找书
	 * 输入2 则按图书序号找书
	 * 否则抛出异常   调用自身方法 重新输入
	 */
	
	public void welcome(){
		System.out.println("输入命令:1-按照名称查找图书;2-按照序号查找图书");
        String input = scan.next();
        try {
        	 if (input.equals("1")){
             	System.out.println("请输入图书名称:");
             	this.bookName();
             }
        	 else if (input.equals("2")) {
     			System.out.println("请输入图书序号:");
     			this.bookNum();
     		}else{
     			throw new Exception();
     		}
		} catch (Exception e) {
		//	e.printStackTrace();
			System.out.println("命令输入错误!请根据提示输入数字命令!");   //捕获异常输出提示
			this.welcome();   //调用方法重新输入
		} finally {
			scan.close();
		}
	}
	public static void main(String[] args) {		
        Library lib = new Library();
        lib.welcome();       
	}

}


写回答 关注

2回答

  • 风中过客
    2015-04-21 22:50:29

    标记一个。

  • 慕奶姨
    2015-01-07 16:35:27

    牛X,你这作业是交给谁的啊~。

Java入门第三季

Java中你必须懂得常用技能,不容错过的精彩,快来加入吧

409792 学习 · 4340 问题

查看课程

相似问题