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

为什么加了个while(bl)和try catch就可以重新输了?输入的时候图书名称打错怎么没有catch 后面那句话啊?

为什么加了个while(bl)和try catch就可以重新输了?输入的时候图书名称打错怎么没有catch 后面那句话啊?

乱斗之王 2017-04-07 13:41:22
package com.imooc;import java.util.Scanner;public class Book {  static String[] name={new String("大学"),new String("中庸"), new String("论语"),new String("孟子")};  static int[] num={1,2,3,4}; public static void main(String[] args)  { System.out.println("1-按照名称查找图书;2-按照序号查找图书"); Scanner input=new Scanner(System.in); int score=input.nextInt();  boolean bl=true; while(bl){    try{ while(score==1){   System.out.println("输入图书名称");   String bookname = input.next();   int i=0; if(bookname.equals(name[i])){  System.out.println("book:"+name[i]);  bl=false;  i++;  break;    }   } while(score==2){ System.out.println("输入图书序号");   int booknum=input.nextInt();   if(booknum==num[booknum-1]){   System.out.println("book:"+name[booknum-1]);   bl=false;   break;  }   }    }catch(Exception e){    System.out.println("图书不存在,请重新输入");    } } }}
查看完整描述

2 回答

?
风信子it

TA贡献1条经验 获得超0个赞

asdasda

查看完整回答
反对 回复 2017-04-08
?
HansonQ

TA贡献223条经验 获得超56个赞

一直是循环吖,没有明确的终止条件会一直这样下去

查看完整回答
反对 回复 2017-04-07
?
司风0

TA贡献26条经验 获得超15个赞

你需要先理解while循环;

int i=0;
while(i<100){//当括号里的表达式结果为true时,就会不断执行大括号内的内容
    ++i;
    System.out.println(i);
}
/*
这段代码会输出1~99
也就是说这个while当满足一个条件时会循环执行一段代码,这种循环称为“当型循环”
*/

这样你就应该会明白了。

查看完整回答
反对 回复 2017-04-07
?
羽觞丨醉月

TA贡献22条经验 获得超6个赞

兄弟  不是我打击你  你还是把教材上的while循环在认真看一遍吧

查看完整回答
反对 回复 2017-04-07
  • 2 回答
  • 0 关注
  • 2129 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信