Java中如何優(yōu)雅地處理scanf輸入錯(cuò)誤

小樊
86
2024-08-07 03:43:22

在Java中,可以使用異常處理機(jī)制來(lái)優(yōu)雅地處理scanf輸入錯(cuò)誤。一種常見(jiàn)的處理方法是使用try-catch語(yǔ)句來(lái)捕獲異常并進(jìn)行相應(yīng)的處理。以下是一個(gè)示例代碼:

import java.util.Scanner;
import java.util.InputMismatchException;

public class InputExample {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        
        try {
            System.out.print("請(qǐng)輸入一個(gè)整數(shù):");
            int num = scanner.nextInt();
            System.out.println("輸入的整數(shù)為:" + num);
        } catch (InputMismatchException e) {
            System.out.println("輸入錯(cuò)誤,請(qǐng)輸入一個(gè)整數(shù)");
            // 清空輸入緩沖區(qū)
            scanner.nextLine();
        }
        
        scanner.close();
    }
}

在上面的代碼中,我們使用try-catch語(yǔ)句捕獲InputMismatchException異常,這個(gè)異常在輸入類型不匹配時(shí)會(huì)被拋出。在catch塊中我們輸出錯(cuò)誤信息,并清空輸入緩沖區(qū),以便繼續(xù)接受下一個(gè)輸入。這樣可以保證程序在遇到輸入錯(cuò)誤時(shí)不會(huì)崩潰,并可以進(jìn)行友好的錯(cuò)誤提示。

0