第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

我想問(wèn)一下,輸入錯(cuò)誤之后怎樣才能讓用戶重新輸入呢?

package?com.jersey;

import?java.util.*;

import?javax.sql.rowset.spi.SyncFactoryException;


public?class?LibSystem?{
	static?Book[]?books={new?Book("論語(yǔ)","000001"),new?Book("老子","000002"),new?Book("java編程思想","000003")};
	public?static?void?main(String[]?args){

		System.out.println("歡迎來(lái)到iLibrary圖書(shū)檢索系統(tǒng)!");
		Scanner?input=new?Scanner(System.in);
		System.out.println("請(qǐng)選擇:1.按書(shū)名檢索?2.按編號(hào)檢索?3.退出系統(tǒng)");
		
		int?n=input.nextInt();
		switch(n){
			case?1:				
				System.out.println("請(qǐng)輸入您所要檢索的圖書(shū)名稱");
				String?a=input.next();
				try{
					String?result=SearchByName(a);
					System.out.println("您所選的《"+result+"》已找到");
					}catch(Exception?e){
						e.printStackTrace();
						System.out.println("您檢索的圖書(shū)不存在!");
						
					}
					break;
			case?2:
				System.out.println("請(qǐng)輸入您所要檢索的圖書(shū)編碼");
				String?b=input.next();
				try{
				String?result2=SearchByCode(b);
				System.out.println("您所選的《"+result2+"》已找到");
				}catch(Exception?e){
					e.printStackTrace();
					System.out.println("您輸入的編碼有誤,請(qǐng)重新輸入!");
				}
				break;
			case?3:
				System.exit(0);
			default:
				System.out.println("您的輸入有誤!請(qǐng)重新輸入!");
		}
		
		}
		
		public?static?String?SearchByName(String?a)?throws?Exception{
			
			for(int?i=0;i<books.length;i++){
				if(a.equals(books[i].name)){
					continue;
				}
				else{
					throw?new?Exception();
				}
				
			}
			return?a;
		}
		public?static?String?SearchByCode(String?b)?throws?Exception{
			String?s2=b;
			for(int?i=0;i<books.length;i++){
				if(b.equals(books[i].code)){
					s2=books[i].name;
					break;
				}
				else{
					throw?new?Exception();
				}
				}
			return?s2;	
	}
	
		
}

諸位還有什么改進(jìn)的建議也請(qǐng)告訴我,謝謝!

正在回答

3 回答

	public?static?void?main(String[]?args)?{
		service();
	}
	
	public?static?void?service(){
		System.out.println("歡迎來(lái)到iLibrary圖書(shū)檢索系統(tǒng)!");
		
		Scanner?input?=?new?Scanner(System.in);
		System.out.println("請(qǐng)選擇:1.按書(shū)名檢索?2.按編號(hào)檢索?3.退出系統(tǒng)");
		int?n?=?input.nextInt();
		switch?(n)?{
		case?1:
			System.out.println("請(qǐng)輸入您所要檢索的圖書(shū)名稱");
			String?a?=?input.next();
			try?{
				String?result?=?SearchByName(a);
				System.out.println("您所選的《"?+?result?+?"》已找到");
			}?catch?(Exception?e)?{
				e.printStackTrace();
				System.out.println("您檢索的圖書(shū)不存在!");
			}
			service();
			break;
		case?2:
			System.out.println("請(qǐng)輸入您所要檢索的圖書(shū)編碼");
			String?b?=?input.next();
			try?{
				String?result2?=?SearchByCode(b);
				System.out.println("您所選的《"?+?result2?+?"》已找到");
			}?catch?(Exception?e)?{
				e.printStackTrace();
				System.out.println("您輸入的編碼有誤,請(qǐng)重新輸入!");
			}
			service();
			break;
		case?3:
			System.out.println("結(jié)束!");
			break;
		default:
			System.out.println("您的輸入有誤!請(qǐng)重新輸入!");
			service();
		}
	}
	
	public?static?String?SearchByName(String?a)?throws?Exception?{

		return?"by?name";
	}

	public?static?String?SearchByCode(String?b)?throws?Exception?{
		return?"by?code";
	}

我這沒(méi)有Book類,模擬一下吧

2 回復(fù) 有任何疑惑可以回復(fù)我~
#1

jerseyyu 提問(wèn)者

謝謝!
2015-08-12 回復(fù) 有任何疑惑可以回復(fù)我~
#2

jerseyyu 提問(wèn)者

非常感謝!
2015-08-15 回復(fù) 有任何疑惑可以回復(fù)我~
#3

jerseyyu 提問(wèn)者

我有一個(gè)疑問(wèn),在定義某方法的時(shí)候調(diào)用其本身是怎樣的原理,感覺(jué)有點(diǎn)奇怪 0.0
2015-08-26 回復(fù) 有任何疑惑可以回復(fù)我~
#4

管理員 回復(fù) jerseyyu 提問(wèn)者

上面代碼是在你的代碼基礎(chǔ)上修改的,也就花了兩三分鐘,并沒(méi)有想太多,可能不太好理解。調(diào)用本身其實(shí)跟調(diào)用其他方法一樣的,不過(guò)一般有個(gè)結(jié)束條件。
2015-08-27 回復(fù) 有任何疑惑可以回復(fù)我~
#5

武庚_Rehan

這個(gè)是截圖嗎?是怎么截成這樣的?謝謝回答
2015-09-02 回復(fù) 有任何疑惑可以回復(fù)我~
#6

陶路

那個(gè)default后面的service();是做什么的 謝謝解答
2015-10-19 回復(fù) 有任何疑惑可以回復(fù)我~
#7

mr1024 回復(fù) 陶路

....調(diào)用方法
2015-11-05 回復(fù) 有任何疑惑可以回復(fù)我~
查看4條回復(fù)

示例代碼中的異常處理也有問(wèn)題啊,壓根不能判斷輸入的信息是否與已有數(shù)據(jù)相匹配,而且真心不明白這里的兩個(gè)異常處理有什么作用!

1 回復(fù) 有任何疑惑可以回復(fù)我~

也可以嘗試一下

boolean ?retry=true;

? ? ? ? ? ? ? ? ?while(needretry){

? ? ? ? ? ? ? ? ? try{

????????????????????????????????//執(zhí)行的代碼塊1

????????????????????????????????retry=false;//沒(méi)有錯(cuò)誤不需要重來(lái)

? ? ? ? ? ? ? ? ? ? ? }catch(Exception e){

????????????????????????????????????//執(zhí)行代碼塊2

????????????????????????????????????? retry=true;//有錯(cuò)誤,要重來(lái) ?

????????????????????????????????????????????}

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?}

這個(gè)模板只是大概的,你可以根據(jù)需要添加其他條件語(yǔ)句及判斷。

親測(cè)有效

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

jerseyyu 提問(wèn)者

感謝,學(xué)習(xí)了
2015-08-26 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消

我想問(wèn)一下,輸入錯(cuò)誤之后怎樣才能讓用戶重新輸入呢?

我要回答 關(guān)注問(wèn)題
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)