问答详情
源自:1-9 经验总结

课后作业——这是我写的代码,大家可以看看!

package com.imooc.test;

import java.util.InputMismatchException;
import java.util.Scanner;

public class Exercise {
	
	private static String[] books = {"Java编程思想", "C语言程序设计", "微积分", "数据结构", "计算机科学导论"};
	
	public static void main(String[] args) {
		
       Exercise exercise = new Exercise();
       exercise.method();
	}
	
	public void method() {
		Scanner in = new Scanner(System.in);
		System.out.println("输入命令:1-按照名称查找图书;2-按照序号查找图书");
		try {
			int index = in.nextInt();
			switch (index) {
			  case 1 :
				  System.out.println("输入图书名称:");
				  String name = in.next();
				  for ( String s : Exercise.books) {
					  if ( s.equals(name) ) {
						  System.out.println("book:"+name);
						  return;
					  }
				  }
				  System.out.println("图书不存在!");
				  method();
				  break;
			  case 2:
				  System.out.println("输入图书序号:");
				  try {
					  int num = in.nextInt(); 
					  for ( String s : Exercise.books) {
						  if ( s.equals(Exercise.books[num-1])) {
							  System.out.println("book:"+Exercise.books[num-1]);
							  return;
						  }
					  }
					  System.out.println("图书不存在!");
					  method();
				  } catch ( Exception e ) {
					  System.out.println("命令输入错误!请根据提示输入数字命令!");
					  method(); 
				  }
				  break;
			}
		} catch ( InputMismatchException input ) {
			System.out.println("命令输入错误!请根据提示输入数字命令!");
			method();
		}
	}
}


提问者:李阿昀 2015-07-22 21:32

个回答

  • 皓婆子
    2015-08-01 11:12:16

    第26行代码for循环里的是什么意识啊,求解释

  • iblur
    2015-07-23 12:27:20

    恩,不错不错

    可以将switch抽取出来成为一个单独的方法,哈哈哈

  • 李阿昀
    2015-07-22 21:36:05

    图书图书序号就是其索引号+1,没设计Book类,肯定是不够的,但运行足以满足题目需求。