斷言是編程術語,表示為一些布爾表達式,程序員相信在程序中的某個特定點該表達式值為真,可以在任何時候啟用和禁用斷言驗證,因此可以在測試時啟用斷言而在部署時禁用斷言。
簡單點說,斷言指的就是,將結果判斷說明,如賣西瓜的老大爺指着他家的西瓜說這個就是一個西瓜,那么這個斷言就會成立。但是賣西瓜的老大爺指着他家的西瓜說我賣的西瓜都是世界上NO.1 的甜。那么我們知道這存在很大的不確定性,所以這個斷言就不會成立。
Java使用斷言的關鍵字是assert。
IDEA,JavaSE工程需要開啟斷言功能
參考地址:https://www.cnblogs.com/noKing/p/7978092.html
方式一:
private static void test1() { String str = null; /* assert str != null; 等同於: if (str == null) throw new AssertionError(); */ assert str != null; System.out.println("str = " + str); }
運行效果:
方式二:
private static void test2() { String str = null; /* 等同於: if (str == null) throw new AssertionError("我是:" + str); */ assert str != null : "我是:" + str; System.out.println("str = " + str); }
運行效果:
方式三:
private static void test3() { int i = -1; /* 等同於: if ((i <= 0)) throw new AssertionError(); */ assert (i > 0); System.out.println("i = " + i); }
運行效果:
小結:
斷言其實是異常的一種處理方式,更加的武斷一點,比如我斷言:從我這邊過要收20元才能過去。給19都不行。 通常用來判斷變量對象是否為null。並且對象為null通常都會拋異常。