Groovy总结

1.Spread Operator(展开运算符)

一个集合使用展开运算符(*.)可以得到一个元素为原集合各个元素执行后面指定方法所得值的集合

def people = [new Person(name:'阿大',age:24),new Person(name:'阿二',age:18)]  
println people*.toString()

2.Elvis Operator(二元运算符)

由于Groovy中“非空即真”,所以原java中的三元运算符可以简化为二元运算符

String name=  person.name?person.name:'unknown'// java的写法  

def name2= person.name ?: "unknown" // Groovy 的写法

3.Safe Navigation/Dereference Operator(安全占位符)

安全占位符(?.)主要用于避免空指针异常

Person user  
println user.name// Throws NullPointerException  
// 为避免空指针异常,需要加上一个检查,java的写法如下  
if (user != null) {  
    println "Java FirstName = ${user.firstName}"  

}  
// Groovy语法的写法  
println "Groovy FirstName = ${user?.firstName}"    

4.Method Closure Operator

我们知道闭包可以被作为一个方法的参数,但是怎么让一个方法作为一个方法的参数呢?Method Closure Operator就是用来解决上述问题的,它允许将一个方法当成一个闭包作为另一个方法的参数。

def list = ['老大','老二','老三']  
//常规的遍历  

list.each{  
    println it  

}  

String printName(name){  
    println name  
}  

//将printName作为参数进行遍历  
list.each(this.&printName)  

5.定义list和map

List empty = []  
Map empty = [:]  

需要知道的是,这种方式新建的List实例是ArrayList,Map实例是LinkedHashMap

6.字段操作

class A {  
   String b  
}  

A a = new A()  
a.b //通过get方法拿值  
a.getB() //通过get方法拿值  
a.@b //直接拿值  

7.as

“as”关键字在Groovy语言中最为常用的用法是进行强制类型转换
用Groovy的是,可能经常看到这样的代码

String a = '78'  
int b = a as int  
print b  

第二行,有个关键字as,可以看出来作用就是把String类型的a转成int类型的b。它是怎么工作的呢,很简单,就是把这个操作代理给了String的asType方法
参考:http://blog.csdn.net/hivon/article/details/2825025

8.Criteria


例子比较多 就不一一列出来了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Groovy 插件是 IntelliJ IDEA 中的一个插件,它为用户提供了在 IDEA 中使用 Groovy 脚本的功能。通过这个插件,我们可以创建并运行 Groovy 脚本,可以在 IDEA 中编写并执行 Groovy 代码。 引用 提到了一些常用的 IntelliJ IDEA 插件,但是没有提到具体的 Groovy 插件。因此,我无法提供更多关于 Groovy 插件的信息。 至于你的问题中提到的修改 Groovy 脚本文件生成带注解的实体类,由于没有具体的代码或示例,我无法提供详细的步骤。但是,基本原理是在 Groovy 脚本中添加相应的注解,以使生成的实体类带有注解信息。 需要注意的是,根据引用提到的信息,Idea生成的实体类是不带注解的。因此,如果你想要生成带注解的实体类,可能需要使用其他方式,例如使用 Hibernate/Jpa 框架并在实体类中添加注解。 总结来说,Groovy 插件是 IntelliJ IDEA 中的一个插件,允许用户在 IDEA 中使用 Groovy 脚本。如果你想要修改生成的实体类为带注解的,可能需要使用其他方式,例如使用 Hibernate/Jpa 框架并在实体类中添加注解。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [IDEA不愧为神器,结合Groovy脚本,简直无敌!](https://blog.csdn.net/bishe_teacher/article/details/107296318)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [常用的 IntelliJ IDEA 插件](https://download.csdn.net/download/qq_39725872/87863653)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值