实现代码如下

来源:1-9 经验总结

神影天初

2018-08-12 13:48

复制粘贴格式化,我还没调试,如果有错误可以回复分享一下。

package com.booksearch;


import java.util.*;


public class BookSearch {

public static void main(String[] args) {

String[] books = { "数据结构", "高数", "论语" };

boolean flag = true;

while (flag) {

try {

System.out.println("输入命令:1.按照名称查图书;2.按照序号查图书");

Scanner input = new Scanner(System.in);

int cmdnum = input.nextInt();

if (cmdnum == 1) {

System.out.println("输入图书名称:");

String name = input.next();

for (String book : books) {

if (book.equals(name)) {

System.out.println("book:" + book);

flag = false;

break;

}

}

if (flag) {

System.out.println("图书不存在");

continue;

}

} else if (cmdnum == 2) {

System.out.println("输入图书序号:");

int id = input.nextInt();

for (int i = 0; i < books.length; i++) {

if (id > 0 && id <= books.length) {

System.out.println("book:" + books[id - 1]);

flag = false;

break;

}

}

if (flag) {

System.out.println("图书不存在");

continue;

}

}

} catch (Exception e) {

System.out.println("命令输入错误!请输入数字命令!");

continue;

}

}

}

}


写回答 关注

1回答

  • omoide
    2018-08-12 15:08:58

    try catch没用吧。。

    神影天初 回复omoide

    去掉try-catch会报错的,而且我的break是为了终止for循环而不是while循环,你看清楚在回复。。。。。。

    2018-08-20 01:32:30

    共 3 条回复 >

Java入门第三季

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

409792 学习 · 4340 问题

查看课程

相似问题