ImageVerifierCode 换一换
格式:DOCX , 页数:6 ,大小:21.75KB ,
资源ID:1068400      下载积分:2 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/1068400.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Groovy的基础语法.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Groovy的基础语法.docx

1、Groovy的基础语法Groovy 的基础语法Groovy 的基础语法Groovy 的语法融合了 Ruby 、Python 和 Smalltalk 的一些 最有用的功能,同时保留了基于 Java 语言的核心语法。对 于 Java 开发人员, Groovy 提供了更简单的替代语言,且 几乎不需要学习时间。语句Groovy 的语句和 Java 类似,但是有一些特殊的地方。例如 语句的分号是可选的。 如果每行一个语句, 就可以省略分号; 如果一行上有多个语句,则需要用分号来分隔。x = 1, 2, 3 println x y = 5; x = y + 7 println x assert x = 1

2、2 另外 return 关键字在方法的最后是可选的;同样,返回类型 也是可选(缺省是 Object )。动态类型像其他 Script 一样, Groovy 不需要显式声明类型。在 Groovy 中,一个对象的类型是在运行时动态发现的,这极 大地减少了要编写的代码数量。在 Groovy 中,类型对于值 (varibles) 、属性 (properties) 、方法 (method) 和闭包 (closure) 参数、返回值都是可有可无的,只有在给定值的时候,才会 决定它的类型, (当然声明了类型的除外) 。例如: /Groovy 动态类型 myStr = Hello World由于使用了动态类型

3、,不需要继承就可以得到多态的全部功厶匕能:class Song Property length Property name class Book def public name def public author def doSomething(thing) println going to do something with a thing named = + thing.name 这里定义了两个 Groovy 类, Song 和 Book 。这两个类都 包含一个 name 属性。函数 doSomething ,它以一个 thing 为参数,并试图打印这个对象的 name 属性,但 doSo

4、mething 函数没有定义其输入参数的类型, 所以只要对 象包含一个 name 属性, 那么它就可以工作。 可见, Song 和 Book 的实例都可以作为 doSomething 的输入参数。mySong = new Song(length:90, name:Burning Down the House) myBook = new Book(name:One Duck Stuck, author:Phyllis Root) doSomething(mySong) /prints Burning Down the House doSomething(myBook) /prints One D

5、uck Stuck def doSth=this.&doSomething doSth(mySong) doSth(myBook) 在例子的最后, 我们还创建了 doSomething 的一个函数指针 doSth ,最后的执行结果与调用 doSoemthing 是一样的。值得注意的是:与 Groovy Beta 不同,在使用新的 JSRGroovy 类时,类里面的所有的变量都必须加上 def 关键字 或者 private 、 protected 或 public 这样的修饰符。当然, 也可以用 Property 关键字声明成员变量。在 Script 中则 不必。字符串Groovy 中的字符串允

6、许使用双引号和单引号。 当使用双引号时, 可以在字符串内嵌入一些运算式, Groovy 允许您使用 与 bash 类似的 $expression 语法进行替换。 可以在字符串中包含任意的 Groovy 表达式。name=James println My name is $name,00$6+1/prints My name is James,007Groovy 还支持 uXXXX 引用(其中 X 是 16 进制数),用来 表示特殊字符,例如 u0040 与 字符相同。name = James text = 大块文本 如果有一大块文本(例如 HTML 和 XML )不想编码,你可 以使用 Her

7、e-docs. here-docs 是创建格式化字符串的一种 便利机制。它需要类似 Python 的三重引号 () 开头,并以 三重引号结尾。hello there $name how are you today? ” assert text != null println(text)在 Groovy-JSR 中,不再支持下面这种多行字符串,个人觉 得似乎与 Here-docs 功能重叠:println(foo)foo = “ hello there how are things?对字符串的操作contains 字符串中是否包含子字符串, groovy.contains(oo) 将返回 tru

8、e;count 返回字符串中子字符串出现的次数, groooovy.count(oo) 将返回 3.tokenize 根据分隔符将字符串分解成子串,appabananaAgrap.tokenize(A) 返回apple,banana,grape 。减操作 groovy-oo ,结果是 grvy 。乘操作 oo*3 ,结果是 oooooo 。Groovy 主要结构 接下来将展示 Groovy 的一些结构,包逻辑分支,类、闭包 逻辑分支 if-else 语句 Groovy 提供 Java 相同的 if-else 语句。 x = false y = false if ( !x ) x = true

9、assert x = true if ( x ) x = false else y = true assert x = yGroovy 也支持三元操作符。y = 5 x = (y 1) ? worked : failed assert x = worked switch 语句Groovy 的 switch 语句兼容 Java 代码,但是更灵活, Groovy 的 switch 语句能够处理各种类型的 switch 值,可以做各种 类型的匹配:case 值为类名,匹配 switch 值为类实例case 值为正则表达式,匹配 switch 值的字符串匹配该正则 表达式case 值为集合,匹配 sw

10、itch 值包含在集合中,包括 ranges 除了上面的, case 值与 switch 值相等才匹配。x = 1.23 result = switch ( x ) case foo: result = found foo / lets fall through case bar: result += bar case 4, 5,6, inList : result = list break case 12.30: result = range breakcase Integer: result = integer break case Number:result = number break

11、 default: result =default assert result = numberSwitch 语句的工作原理: switch 语句在做 case 值匹配时, 会调用isCase(switchValue) 方法,Groovy提供了各种类型, 如类,正则表达式、集合等等的重载。可以创建自定义的匹 配类,增加 isCase(switchValue) 方法来提供自定义的匹配类 型。循环while 和 do 循环Groovy 支持 Java 相同的 while 循环,但目前暂不支持 do循环x = 0 y = 5 while ( y- 0 ) x+ assert x = 5for 循环G

12、roovy 的 for 循环更简单,而且能够和各种类型的数组、集 合、Map、范围等一起工作,我们稍候会详细介绍这些内容。/ iterate over a range x = 0 for ( i in 0.9 ) x += i assert x = 45/ iterate over a listx = 0 for ( i in 0, 1, 2, 3, 4 ) x += i assert x = 10/ iterate over an array array = (0.4).toArray() x = 0 for ( i in array ) x += i assert x = 10/ iter

13、ate over a mapmap = abc:1, def :2, xyz:3 x =( e in map ) x += e.value assert x = 6/ iterate over values in a map x = 0 for ( v in map.values() ) x += v assert x = 6/ iterate over the characters in a string text = abc list = for (c in text) list.add? assert list = a, b, c运行 Groovy 脚本 你可以象使用 Perl 一样编写

14、 Groovy 脚本,不需要 class , 不需要 Main 入口点,也不需要声明变量;此外,你还可以 用 def 语句来定义自己的函数,并在脚本中使用它。 像许多脚本语言一样, Groovy 是 在运行时解释的, 无编译 的代码在构建 -运行周期中可以提供很多好处。 运行时编译使 Groovy 成为快速原型设计、构建不同的实用程序和测试框 架的理想平台。通过以下代码可以很简单的运行 Groovy.groovy HelloWorld.groovy除了利用解释器来运行 Groovy脚本外,Groovy提供了两种 不同的解释器 Shell ,使所有有效的 Groovy 表达式可以交 互地执行:运

15、行 groovysh 启动命令 Shell ,可以输入 Groovy 语句直接 执行运行 groovyConsole 启动 Swing 方式的 Groovy 控制台, 这 是一个简单的 Groovy 编辑器Groovy 脚本实际上是字节码级别的 Java 类。因此,还可 以用 groovyc 编译 Groovy 脚本。可以通过命令行或者 Ant 使用 groovyc 以生成脚本的类文件。这些类可以用普 通 java 命令运行,只要 classpath 包括 groovy.jar 和 asm.jar 。( wang_wang )Groovy 前言、八 、-前言Groovy 是基于 JRE 的脚本语言 ( Script ) ,和 Perl ,Python 等等脚本语言一样,它能以快速简洁的方式来完成一些工作: 如访问数据库, 编写单元测试用例 (Unit Test Case) ,快速实 现产品原型等等。Groovy 是由 James Strachan 和 Bob McW

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1