`
tk_punk
  • 浏览: 2026 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

groovy中in的用法

阅读更多
 “in”关键字,在Groovy语言中用法如下:

      def list = [1,2,3]
     
      for(i in list)
      {
         println i
      }

  运行结果为:

1
2
3

  这个增强的for循环也可以用在对Map的循环上,如:

      def map = [a:"1",b:"2"]
     
      for(i in map)
      {
         println "${i.key} : ${i.value}"
      }

  运行结果为:

a : 1
b : 2

  除此之外,“in”关键字还被Groovy语言引入用在判断一个对象是否是一个集合类的元素。如:

      def list = [1,2,3]
     
      println 1 in list
     
      println 5 in list

  运行结果为:

true
false

  其他,如Set对象也可以这样用:

      def set = [1,2,3,4,3,4] as Set
     
      println 1 in set
     
      println 5 in set

  运行结果为:

true
false

  除了这些,在Groovy语言中,“in”关键字还有一个用途,就是用来判定一个对象是否属于一个类的实例。这个用法在Java语言中是由“instanceof”关键字承担的。如,我们有两个类A和B:

class A
{}
 
class B extends A
{}

  现在,我们有一个对象是由B类实例化,如下:

      def b = new B()

  我们就可以这样使用“in”关键字:

      println b in A
     
      println b in B

  和Java语言中“instanceof”关键字的用法一模一样,运行结果为:

true
true

  当然了,Java语言的“instanceof”关键字也被Groovy语言继承下来了,下面的代码也将打印“true”:

      println b instanceof A

  如果是接口和它的实现,也可以与上面一样的使用“in”关键字:

interface C
{}
 
class D implements C
{}
 
 
      def d = new D()
     
      println d in C
     
      println d in D

  运行结果同样是两个“true”。
分享到:
评论

相关推荐

    groovy+in+action

    - **高级用法**:Groovy还支持闭包的递归调用、多参数传递等功能。 **5. 动态对象导向** - **动态类型**:Groovy采用动态类型系统,可以在运行时确定变量类型。 - **元编程**:Groovy提供了一套强大的元编程...

    groovy in action中文版(1)

    这意味着开发者可以在现有的Java项目中轻松引入Groovy代码,或者创建全新的Groovy应用程序。 **1.1.2 与Java共事:无缝集成** Groovy的设计初衷之一就是能够与Java无缝集成。这种集成体现在多个方面: - **语法...

    Groovy in Action, Second Edition 源码

    源码包"GroovyInAction-master"包含了书中各个章节的实例代码,这些代码展示了Groovy的各种特性和用法,包括但不限于以下知识点: 1. **动态类型与静态类型**:Groovy允许程序员在同一个项目中同时使用动态类型和...

    groovy in action

    这本书是学习Groovy语言的宝贵资源,通过详细讲解和实例代码,帮助读者理解并掌握Groovy的核心特性和高级用法。 在书中,作者首先会介绍Groovy的基础知识,包括变量、控制结构(如if语句和循环)、函数以及类和对象...

    groovy基础语法.pdf

    Groovy还提供了一些便捷的异常处理方法,如try-catch和try-finally的简化用法。 脚本和模块化: Groovy支持模块化编程,可以通过import语句导入其他Groovy脚本或Java类。同时,Groovy允许以脚本的形式运行代码,这...

    Groovy In Action

    通过学习《Groovy In Action》,开发者可以掌握Groovy的精髓,从而在日常开发中充分利用其优势,提升开发效率,编写出更加灵活、可读性强的代码。无论你是Java开发者希望扩展技能,还是对动态语言感兴趣的程序员,这...

    groovy学习笔记

    在Groovy中,所有的数字都是Object类型的,这意味着你可以在对象上调用方法。例如,你可以直接在数字上使用加减乘除等运算符,如`12 + 8`。Groovy还支持幂运算,`4 ** 3`表示4的3次方。字符串可以用单引号 `'kevin'`...

    Groovy资料(英文版)

    "Groovy in Action"是一本权威的Groovy学习资料,对于想要深入理解Groovy特性和用法的开发者来说,它是不可或缺的参考书籍。 这本书详细介绍了Groovy语言的基础,包括语法、类型系统、控制结构、函数式编程概念以及...

    Groovy_快速入门.doc

    ### Groovy 快速入门知识点详解 ...以上就是Groovy基础语法中的关键知识点,包括集合操作和闭包的相关用法。通过掌握这些基础知识,可以帮助开发者快速上手Groovy语言,并利用其强大且灵活的功能进行高效开发。

    groovy代码-range

    Groovy是一种动态、开源的编程语言,它与Java平台紧密集成,可以被用作脚本语言或构建完整的应用程序。在Groovy中,`range`是一个非常...在学习和使用Groovy时,掌握`range`的用法对于编写高效、易读的代码至关重要。

    Gradle In Action2 源代码

    通过对《Gradle In Action2》源代码的学习,开发者不仅可以掌握Gradle的基本用法,还能深入理解其工作原理,从而更高效地管理和构建自己的项目。同时,源码实例也为解决实际问题提供了参考,帮助开发者解决在构建...

    grails in action

    - **集合和迭代**:展示Groovy中列表、地图和集合的高级用法,以及各种迭代方法。 - **异步编程**:介绍Groovy的非阻塞I/O和并行处理机制,如协程和Fibers。 ### 建模与控制器章节概览 第三章和第四章分别讨论了...

    Dynamic Parameter plug-in Jenkins plug-in

    "Dynamic Parameter plug-in"是 Jenkins 插件家族中的一个重要成员,它为构建过程提供了更灵活的参数化构建功能。由于某种原因,这个插件在官方仓库可能无法直接搜索到,但它的价值在于能够帮助开发者自定义构建过程...

    orientdb-spring-boot-example:Spring Boot Ang Groovy的OrientDB使用示例

    orientdb-spring-boot-example 带有spring boot ang groovy和 lib的OrientDB用法示例在 lib提供的IntelliJ IDEA中突出显示了完整的方法。 ###您可以从该项目中学到什么使用OrientDB图形和文档本机api,但仍然保持...

    Gradle In Action

    Gradle是一个开源的项目自动化构建工具,基于Apache Ant和Apache Maven概念,由基于Groovy语言的Domain Specific Language(DSL)来驱动。它使用了一种基于依赖的声明式语言,这使得开发者能够编写出更加简洁和具有...

Global site tag (gtag.js) - Google Analytics