assert是java2在1.4增加的一个关键字
其作用和if(condition)类似,当条件满足时程序正常向下执行,不满足时断言失败,将会抛出AssertionError对象
语法形式有2种:1.assert condition 2.assert condition:expr
实际用法:
public static void main(String[] args) {
System.out.println("开始");
assert true;
System.out.println("继续");
assert false:"stop";
System.out.println("结束");
}
按照我们的思路,程序执行后输出结果应该是:开始--继续 后面因为条件为false就结束了,但是实际结果却是:开始-继续-结束。
出现这种情况的主要原因是,assert方法需要显示的开启才能生效;可以使用 -esa+参数 来开启,使用 -dsa+参数来关闭
虽然该关键字看起来比if等逻辑判断语句使用起来方便简洁,但是实际开发中很少有人会用它。主要是因为assert需要显示的开启才能有作用,另外assert断言一旦失败程序将会停掉,也就是说一旦assert的条件为false整个系统会挂掉。