在Java中,IllegalArgumentException 異常表示方法接收到一個非法的參數。以下是導致 IllegalArgumentException 異常的常見情況:
參數值超出了允許的范圍:當參數的值超出了方法定義的有效范圍時,可能會拋出 IllegalArgumentException 異常。例如,一個方法要求傳入的參數必須是正整數,但是傳入的參數是負數或零。
參數為 null:某些方法可能要求參數不能為空,如果傳入的參數為 null,則可能會拋出 IllegalArgumentException 異常。
參數類型不匹配:當方法的參數期望是特定類型的對象時,如果傳入的參數類型與期望的類型不匹配,則可能會拋出 IllegalArgumentException 異常。
非法的枚舉值:如果一個方法的參數為枚舉類型,但傳入的參數不是一個有效的枚舉值,則可能會拋出 IllegalArgumentException 異常。
非法的數據格式:當方法要求傳入的數據格式必須滿足一定的規范時,如果傳入的數據格式不符合要求,則可能會拋出 IllegalArgumentException 異常。
需要注意的是,IllegalArgumentException 是一個 unchecked 異常,不需要在方法聲明中顯式地拋出或捕獲。