前言
同C語言一樣,Java也有斷言關鍵字assert,它們的用法也比較相似,
注意:Java的斷言是從1.4版本開始的,以前的版本不支持斷言,
一、斷言語法
java中斷言有兩種語法
- assert 布爾運算式;
- assert 布爾運算式 :“錯誤資訊提示”;
- 第一種語法如果條件判斷為ture程式繼續執行,如果判斷為false,則會終止程式并報出AssertionError例外,
- 第二種語法如果判斷為ture程式也是繼續執行,如果判斷為false,則會終止程式并報出你所輸入的錯誤資訊,
二、IDEA中的斷言
在IDEA中斷言是默認關閉的,需要我們手動打開,

找到你需要斷言的類在 VM options中輸入-ea就好了

三、代碼示例
public class Test{
public static void toString(int[] arr){
assert arr!=null : "你傳遞了一個錯誤的參考";
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
}
public static void main(String[] args) {
int[] array = {1,2,3,4,5,6,7,8,9};
toString(null);
}
}

可以看到但布爾運算式判斷為false程式會停止運行并報出錯誤,
總結
斷言我們是不建議使用的,我了解到幾個原因
- 斷言不是默認開啟的,需要手動開啟,這就給程式的移植帶來了不便,
- 一旦斷言判斷失敗整個程式就會終止,在一個生產環境下的應用是非常危險的,
- 所以我們應該避免使用斷言,使用if陳述句判斷會更好,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/279575.html
標籤:java
