假如你使用过JDK1.4或者更高版本,你一定熟悉assertions(断言)。。通常,他会在你的代码中测试你的逻辑是否矛盾和正确。

接下来我们通过实例来学习Groovy中的断言,在学习之前,请务必记住assert这个关键字。

assert(true)
assert 1 == 1
def x = 1
assert x == 1
def y = 1 ; assert y == 1

请注意,def关键字类似与JavaScript中的var.用来定义动态变量。

下面我们来一行一行的解释:

assert(true)

传递一个参数给断言,这里返回true;

assert 1 == 1

在这里我们省略了圆括号,因为这个是可选的,注意Groovy的“==”与Java中的含义不同,留在后面的教材里讲解。

def x = 1
assert x == 1

先定义一个变量x,赋值1,判断x是否为1.

def y = 1 ; assert y == 1

同上。

assertions的目的:

显示当前的程序状态。
更好的替换注释,因为它同时担起验证的责任

Groovy(Java笨狗)系列---断言相关推荐

  1. Groovy(Java笨狗)系列--datatypes

    Java's type system-primitives and references(原始值和引用) 在Groovy中,一切都是对象. Java 区分primitive types (比如:int ...

  2. Groovy(Java笨狗)系列--Class,Scripts

    Class是OOP编程的基础. 现在我们开始Class. 下面我们定义一个简单的Groovy类: class Book { private String title Book (String theT ...

  3. Groovy(Java笨狗)系列--fields and local variables

    使用最简单的术语,a variable(变量): 变量名引用的值关联着物理内存的某个位置.和Java一样,Groovy拥有 local variables(本地变量),fields(字段):local ...

  4. Groovy(Java笨狗)系列-Working with closures(1)

    翻译自<Groovy in action>,如有不准确之处,希望指教! closures(闭包)很重要,非常的 重要!!!可以被认为是Groovy中一个非常有用的特性.同时,在你没有完全了 ...

  5. Groovy(Java笨狗)系列---Getting Started(三)

    (一).Setting up your Java environment(设置你的Java环境). Groovy需要Java,建议JDK1.4或者以上.假如你还没有安装Java,请按照下面的步骤来安装 ...

  6. Groovy on Grails(Java笨狗)系列---前言(二)

    本系列的教材是由本人对官方文档的翻译,也算一个对学习的总结,对于原文档的所有权归原作者,译文为共享资源,但不能用于商业目的. 因为groovy,grails的语法发生了很多变化,可能现在互联网上的资料 ...

  7. Groovy on Grails(Java笨狗)系列---开篇(一)

    Groovy 和Grails就不用介绍了 这两个系列主要是写给喜欢Groovy和Grails的朋友们 个人感觉 Groovy on Grails会在以后使我们对现在编程思想的改变,起码对于我自己来说是 ...

  8. Java笨狗groovy学习笔记—Regular Expressions

    正則表達式就像一把瑞士軍刀. "potatoe" ==~ /potatoe/ 假如你在groovyConsole運行它,將返回true.這裡有兩件需要注意的事情: 1.==~操作符 ...

  9. Grails(Java笨狗)系列-更好的理解闭包(closure)

    用现实生活中的示例来说明闭包 现在,让我们来考虑放在信封里的信纸.信纸里可能写着"x=5, y=10"等等一些内容.对于一个闭包(closure),信纸上可能写着一系列的指令.你可 ...

最新文章

  1. 不止Markov决策过程,全景式分析强化学习研究内容
  2. 口罩巨头挑战“量子霸权”,3个月造出的『最强量子计算机』靠谱不?
  3. C#发现之旅第十四讲 基于动态编译的VB.NET脚本引擎
  4. MySQL隐藏换行符的处理
  5. 专业程序员必知必会技巧:驯服复杂代码
  6. manually create IBASE 03 in CRM
  7. 思科查看服务器启动配置文件,启动配置检查UCS
  8. 消息推送生命周期_一套完整的APP推送体系方案|附思维导图
  9. 支持向量机python实例_Python机器学习SVM简单应用实例 | kTWO-个人博客
  10. WPF中的图表设计器 – 2
  11. oracle和Linux能兼容吗,Oracle基于Linux 7下的安装
  12. windows核心编程第一章阅读
  13. 如何复现论文中的算法
  14. 高中教师计算机水平要求,高中信息技术教师考试大纲
  15. 笔记本开机循环显示:this product is covered by one or more of the following patents 解决办法
  16. 使用PPT保存300dpi或者指定dpi的高质量图片
  17. java根据指定字符开头_Java如何检查以特定单词开头的字符串?
  18. SQL in 模糊查询的问题
  19. 小程序-实现左右菜单联动功能
  20. 动力节点-crm-项目笔记(待完善)

热门文章

  1. 3DMAX机械建模贴图教程
  2. [源码分析] Facebook如何训练超大模型 --- (3)
  3. Python自述和简介
  4. 14.说说ATL常用包装类的用法和坑
  5. 第1章 计算机系统漫游
  6. 微信趣味测评小程序独立版源码
  7. 使用Elasticsearch计算布林带宽度指标
  8. vasp服务器中断,求助VASP能带计算的中断原因 - 第一原理 - 小木虫 - 学术 科研 互动社区...
  9. tensorflow进阶(更新中...)
  10. jmu-python-生日悖论(熟练掌握随机数的生成以及检查重复)