`
agile_boy
  • 浏览: 556802 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

GINA之Groovy的spread-dot操作符

阅读更多
GINA:Groovy In Action
  在看Grail的源代码的时候,有时会碰到"*."操作符,大体能猜到什么意思,可是没有看到官方的说法,很郁闷,这不看GIA的时候,不小心看到了(呵呵,我个人不喜欢通读),于是也就豁然开朗了
  在GIA中,此种操作称之为:spread-dot操作,我暂时姑且就叫“展开(点)”操作吧。其实际的意义就确实是的,比如
list*.member
list.collect{ item -> item?.member }
是等效的。此处member可以是属性,也可以是get/set方法,甚至是一般的方法。如下例
class SpreadDotDemo {
   def count
}
def list = [new SpreadDotDemo(count:1),new SpreadDotDemo(count:2),new SpreadDotDemo(count:5) ]
assert 8==list*.count.sum()
assert 8==list.count.sum()//去掉*也可以的


2008-02-02更新
  跟spead doc操作符相关的事spead操作(*),它可以看作是逗号分隔的list的下标操作符的逆操作:),引用GIA的示例
def getList(){
return [1,2,3]
}
def sum(a,b,c){
return a + b + c
}
assert 6 == sum(*list)
看到了吧,示例中将list又展开为三个单独的元素
0
0
分享到:
评论
2 楼 agile_boy 2008-02-02  
呵呵,GIA=Groovy In Action
1 楼 zengsun 2008-02-02  
得益!谢谢分享了。
问一下GIA是什么?

相关推荐

    Gina 开机登陆

    在Windows XP系统中,Gina(Graphical Identification and Authentication)是一个重要的组件,它负责处理用户登录、注销、切换用户等操作。通过理解Gina的工作流程以及相关函数的作用,可以更好地了解系统的登录...

    修改GINA,自己实现Windows登陆过程

    **GINA(Graphical Identification and Authentication)**是Windows操作系统中的一部分,主要负责用户的身份验证过程。在Windows XP和Server 2003中,GINA是登录界面的核心组件,允许开发者自定义登录屏幕的行为和...

    自动开关机命令

    如果你想以倒计时的方式,也可以设置好自动关机后,如果想取消的话,关机:win~dos自动开关机命令

    gina远程桌面密码记录工具

    用于记录windows远程桌面登录密码,目前免杀

    Windows登录Gina的Dll

    Gina全称为图形识别与认证模块,是Windows操作系统中的一个动态链接库(Dll),主要用于处理用户登录过程中的身份验证。在Windows XP及更早版本中,Gina是定制登录界面和实现自定义身份验证逻辑的核心组件。 Gina....

    Win7下的Gina

    ### Win7下的Gina #### 重要概念:Gina与Credential Provider 在Windows操作系统中,登录体验和身份验证过程对于确保系统安全至关重要。早期版本的Windows(如Windows XP)使用了Gina(Graphical Identification ...

    替换Windows的GINA---日历登录管理器

    日历登录管理器1.0.0 1:取代Windows默认的登录管理器,在登录界面显示的同时显示日历信息,包括阳历和农历,且注明当天的节日信息(用户也可以自行编辑节日信息) ... 3:用户可以很方便的查看本地所有用户的登录基本...

    GINA之windows登录控制替换

    GINA之Windows登录控制替换 在Windows操作系统中,登录控制是由WinLogon和GINA DLL共同实现的。GINA DLL提供了一个交互式的界面为用户登录提供认证请求,而WinLogon则负责调用GINA DLL来实现登录控制。 在NT/2000/...

    gina-map-layers:用于访问GINA地图图块的图层定义和API

    可以在找到示例支持的Web Map API OpenLayers 2.11+ Google Maps JS API v3 传单0.6+ Mapbox 1.6以上下载资料库使用凉亭: bower install https://github.com/gina-alaska/gina-map-layers.git下载zip: ...

    p-gina-de-negocio-escuela-de-idiomas

    "p-gina-de-negocio-escuela-de-idiomas"这个项目标题暗示了我们正在讨论的是一个专门针对语言学校的商业网页设计。这个项目可能涉及到创建一个功能完备、用户友好的平台,用于展示课程、招生、师资力量以及提供在线...

    P-Gina-Web-Con-Jquery

    【P-Gina-Web-Con-Jquery】是一个网页项目,它利用了JavaScript库JQuery来增强用户体验,同时结合了CSS(层叠样式表)进行页面的布局与美化。在这个项目中,JQuery被用来处理用户的交互事件,实现动态效果,使得网页...

    定制 自定义 GINA ,Customing GINA

    在 Windows 操作系统中,GINA(Graphical Identification and Authentication)是一個可插拔的组件,负责处理用户的认证和身份验证过程。GINA 是一个Third-party 可以取代的组件,以实现自定义的认证机制。通过...

    P-gina-Tecno-Entregas-Evelyn-9-

    标题 "P-gina-Tecno-Entregas-Evelyn-9-" 暗示这是一个技术相关的项目交付页面,可能是某个网页设计或前端开发的工作成果。描述中的内容相同,进一步确认了这可能是一个个人或者团队的工作展示页面。标签 "CSS" 明确...

    P-gina-web-de-soporte-de-Arrecife-App-2021

    "P-gina-web-de-soporte-de-Arrecife-App-2021"是一个关于Arrecife App 2021的支持网页项目,它旨在为用户提供帮助、解答疑问和解决应用中的问题。这个项目的重点是使用CSS(层叠样式表)来实现美观且用户友好的界面...

    Mi-Primera-P-gina-Web-Bienes-Ra-ces-:PrimeraPáginacreada en el curso deprogramaciónweb de 0 a experto

    【Mi-Primera-P-gina-Web-Bienes-Ra-ces】是一个初学者在完成从0到专家的Web编程课程后创建的首个网页项目。这个项目着重于介绍HTML(超文本标记语言)的基础知识,这是构建网页内容的核心语言。HTML允许开发者通过...

    GINA1.zip_gina_zip

    6. **服务集成**:如果自定义GINA是为了集成特定的认证服务(如LDAP、Radius、ADFS等),则需要熟悉这些服务的工作原理以及如何与之通信。 7. **日志与审计**:自定义GINA可能需要记录详细的登录活动,以便进行安全...

    Página inicial Coimbra Sports-crx插件

    在Chrome操作系统,Mac或Windows 7或Windows Vista上扩展了科英布拉的操作系统,并在Microsoft Edge上进行了大范围的Contagem个性化设置。 南极洲信息,jogadores,转送,treinadores,horáriosde jogos或ingressos...

    Página Inicial Felipe Prior-crx插件

    语言:português (Brasil) 与我的新个性化主页靠近我! Talk Troop,一切都好? 我们开发这个工具,让您更接近我。 在Chrome OS,Mac和Windows中安装扩展,并为您的Google Chrome或Microsoft Edge提供定制壁纸的新...

Global site tag (gtag.js) - Google Analytics