assert在Java与groovy中的区别

Posted Alighieri

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了assert在Java与groovy中的区别相关的知识,希望对你有一定的参考价值。

 

 

 

  断言是用于验证假设条件是否为真,在Groovy的断言中,如果假设的条件不为真,那么就会抛出java.lang.AssertionError异常。使用Groovy表达式来测试假设条件。

  如

assert 1==2 : "One isn\'t Two"

  会抛出异常:

Exception thrown

java.lang.AssertionError: One isn\'t Two. Expression: (1 == 2)

    at ConsoleScript19.run(ConsoleScript19:1)

 Java的断言也是这么写的:
  assert 1==2 : "One isn\'t Two";

可见,Groovy的断言语法与Java的断言相同,Groovy的断言可以省略分号。

断言的使用技巧:
当你使用断言时,你应用包含一条消息。此消息可以帮助其他人维护和理解你的代码,理清你的意图。

2. 强断言

  Groovy的断言assert关键字仅仅是检查表达式是否为真。如果为假,断言仅仅告诉开发者,表达式不成立,以及表达式使用的变量值,除此以外什么都没有。如果使用强断言,断言的输出会提供表达式的每一个子表达式的可视化展现。下面我将详细说明强断言。

 assert new File(\'HelloWorld.txt\')==new File(\'Hello.txt\')

 

 

断言可以方便地对代码进行测试。

 

以上是关于assert在Java与groovy中的区别的主要内容,如果未能解决你的问题,请参考以下文章

groovy 中的闭包与 java 8 中的闭包(lambda 表达式)?

Groovy 语法学习

Scala,Groovy,Clojure三门语言的区别

Groovy闭包 Closure ( 闭包中调用 Groovy 脚本中的方法 | owner 与 delegate 区别 | 闭包中调用对象中的方法 )

Groovy'断言':如何显示价值?

04-Groovy-运算符