为了账号安全,请及时绑定邮箱和手机立即绑定

如代码所示,for循环那步怎么修改?

package test3;

import java.util.*;


public class Mooc4 {

Scanner sc=new Scanner(System.in);

String[] bookName={"高数","数据结构","haha"};

int l=bookName.length;

//通过实例化来实现test2()

public static void main(String[] args) {

Mooc4 m=new Mooc4();

m.test2();


}

//定义一个test1方法用来输入管理系统

public void test1(){

//通过while来实现无限循环

while(true){

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

//定义bookNum来选择不同的方式查找图书

int bookNum=sc.nextInt();

//按照名称查找图书

if(bookNum==1){

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

String n1=sc.next();

//通过for循环来控制数组的输出

/*

* 这一步因为要遍历数组,所以每次都要打印"图书不存在",应该怎么修改

*/

for(int i=0;i<l;i++){

String book=bookName[i];

//比较输入字符串和图书名字

if(n1.equals(book)){

book=bookName[i];

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

}else{

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

}


}

  

}

//按照序列查找图书

if(bookNum==2){

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

int n2=sc.nextInt();

if(n2>=l){

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

}else{

System.out.println("book:"+bookName[n2]);

break;

}

}

}


}

//通过test2()调用test1()来获取异常

public void test2(){

try{

test1();

}catch(InputMismatchException e){

System.out.println("命令输入有误!请根据提示输入数字命令!");

}catch(Exception e){

e.printStackTrace();

}

}


}


正在回答

2 回答

for(i=0;i<l;i++){

String book=bookName[i];

//比较输入字符串和图书名字

if(n1.equals(book)){

book=bookName[i];

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

}}

if(!n1.equals(bookName[i])){

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

}



0 回复 有任何疑惑可以回复我~

加一个标志变量boolean flag=flase,遍历时候,如果存在所选图书,置为true.根据最终的flag 判断输出

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第三季
  • 参与学习       409792    人
  • 解答问题       4340    个

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

进入课程

如代码所示,for循环那步怎么修改?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信