您的位置:首页 > 其它

字符串数组内搜索的方法

2016-03-13 15:14 337 查看
1.如果用具体字符匹配来搜索:

private static String getBookByName(String[] books)
throws Exception {
System.out.println("输入图书名称:");
//获取输入的图书名称
String name = console.next();
for (int i = 0; i < books.length; i++) {
if (name.equals(books[i]))
//输入的名称与某一图书名称匹配,返回该图书
return books[i];
}
//若无匹配,抛出”图书不存在异常“
throw new Exception("图书不存在!");
}


2.如果用下标来查找:

'''
//根据图书序号(数组下标)查询图书
private static String getBookByNumber(String[] books)
throws Exception {
while (true) {
System.out.println("输入图书序号:");
try {
//获取输入的图书序号(数组下标)
int index = inputCommand();
//若返回值为-1
if(index == -1){
System.out.println("命令输入错误!请根据提示输入数字命令!");
continue;
}
//若不出现”数组下标越界异常“,则返回相应位置的图书
String book = books[index];
return book;
} catch (ArrayIndexOutOfBoundsException e) {
//输入的序号不存在(引发”数组下标越界异常“),则抛出”图书不存在异常“
Exception bookNotExists = new Exception("图书不存在!");
bookNotExists.initCause(e);
throw bookNotExists;
}
}
}


“`

其中思路“//若不出现”数组下标越界异常“,则返回相应位置的图书”是值得学习的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: