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

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

當(dāng)用戶輸入錯誤的字符或無效的輸入數(shù)據(jù)時,如何顯示“打印”錯誤?

當(dāng)用戶輸入錯誤的字符或無效的輸入數(shù)據(jù)時,如何顯示“打印”錯誤?

猛跑小豬 2019-04-18 17:15:44
我想知道是否有一種簡單的方法來顯示錯誤字符或無效輸入數(shù)據(jù)的錯誤。public static void main(String[] args) {     // Step 1: Create new Scanner object.     Scanner input = new Scanner(System.in);              // Step 2: Prompt the user to enter today's day.     System.out.print("Enter today’s day as an Integer (0-6): ");     int Today = input.nextInt();     // Step 3: Prompt the user to enter the number of days elapsed since today.     System.out.print("Enter the number of days elapsed since today as an Integer: ");     int DaysElapsed= input.nextInt();     // Step 4: Compute the future day.     int FutureDay = (Today + DaysElapsed) % 7;     // Step 5: Printing the results.         // Step 5.1: Today's day result depending the case.         System.out.print("Today is ");             // Step 5.2: Future day result depending the case.         System.out.print(" and the future day is ");
查看完整描述

2 回答

?
慕妹3146593

TA貢獻(xiàn)1820條經(jīng)驗 獲得超9個贊

因為你只是期待'int'來自scanner.nextInt()它會拋出InputMismatchException異常。所以你可以int像這樣輕松驗證你的輸入-

try {
   int Today = input.nextInt();
   int DaysElapsed= input.nextInt();} catch (InputMismatchException){
   System.err.println("Input is not an integer");}

Scanner.nextInt()也拋出NoSuchElementExceptionIllegalStateException異常此外,您可以通過使用條件(today>=1 && today=<31)驗證輸入日期是否有效


查看完整回答
反對 回復(fù) 2019-05-15
?
牛魔王的故事

TA貢獻(xiàn)1830條經(jīng)驗 獲得超3個贊

使用nextInt(),您已經(jīng)將允許的值過濾為整數(shù)。但是,如果您希望用戶輸入有限范圍內(nèi)的值,您可以使用以下內(nèi)容:

    int Today = 0;

    if (input.hasNextInt()) {
        if (input.nextInt() < 32 && input.nextInt() > 0) { //should be between 0-32

            Today = input.nextInt();

        } else {

            throw new Exception("Number must be between 0-32");
        }
    }

編輯:

如果您想繼續(xù)出錯:

    int Today = 0;
    if(input.hasNextInt()) {

        Today = input.nextInt();
        while (!(Today > 0 && Today < 32)){

            System.out.println("Number must be between 0-32");
            Today = input.nextInt();
        }
    }


查看完整回答
反對 回復(fù) 2019-05-15
  • 2 回答
  • 0 關(guān)注
  • 718 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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