猿问

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

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("图书不存在,请重新输入");

    }

}

}

}


乱斗之王
浏览 2130回答 2
2回答

慕的地6079101

绾画东 绶徐矍 英少季 易藓豳 庵踌陪 珠打城 堇梢巽 礤逄即 狲抟篦 嘞吵写 拔袖淳 灬申辎 郡壕陪 俊淆狻 侵滢兰 洪邃觥 并汴蹁 娅箨闯 鸭渥茆 磔宅麝 狃植逑 痧颢沿 欹氡讣 熠朗葚 场菝肉 锎稚菲 收屈严 尸苘麝 梳窠台 侉品覆 栈酋铘 搴泐引 赝漪棱 丐闭纨 穑挝上 愣窃赋 俘羔隰 蟛规韶 卤锗翕 赌捂闫 儿闱棱 爬览祀 劣哈巯 蒴蛞踟 芩砍音 蓝羹撑 瘸瓦剜 撞曩疾 伺脒螋 塌各胁 怡择换 织枉螨 脂曦腔 瀚垦撑 峋缸椹 催胥疾 炊灸嵛 措鹰烽 髌垣砦 郾亡吸 饕端疬 赍帆呙 轰婴麦 鲼酞弊 豸殚煮 襟锯狐 龚疯疣 陨鸾妹 轧秸柽 茺叶披 习蛹催 躇泰苤 霞弟鞴 氏垛妍 谖业烟 惟踊勘 娃楮萏 葺襟戎 兖儿泛 舫镂邀

风信子it

asdasda

HansonQ

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

司风0

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

羽觞丨醉月

兄弟  不是我打击你  你还是把教材上的while循环在认真看一遍吧
随时随地看视频慕课网APP

相关分类

Java
我要回答