码迷,mamicode.com
首页 > 其他好文 > 详细

断言(assert)

时间:2019-11-29 10:57:05      阅读:84      评论:0      收藏:0      [点我收藏+]

标签:oid   说明   test   assertion   ring   out   src   术语   erro   

断言是编程术语,表示为一些布尔表达式,程序员相信在程序中的某个特定点该表达式值为真,可以在任何时候启用和禁用断言验证,因此可以在测试时启用断言而在部署时禁用断言。
简单点说,断言指的就是,将结果判断说明,如卖西瓜的老大爷指着他家的西瓜说这个就是一个西瓜,那么这个断言就会成立。但是卖西瓜的老大爷指着他家的西瓜说我卖的西瓜都是世界上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通常都会抛异常。





断言(assert)

标签:oid   说明   test   assertion   ring   out   src   术语   erro   

原文地址:https://www.cnblogs.com/yuanke-blog/p/11955956.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!