groovy 速学 - 05 - 方法,函数与闭包
来源:互联网 发布:c语言考试卷 编辑:程序博客网 时间:2024/06/11 05:25
目录
- 方法 函数 闭包
- 方法
- 定义方法
- 返回值
- 函数字面值
- 概述
- 定义一个闭包
- 使用默认参数
- 调用闭包
- it
- 方法
- 方法 函数 闭包
摘要
定义方法,参数默认值,返回值,定义闭包,方法与闭包区别
方法 函数 闭包
方法
定义方法
在 Groovy 中定义方法的参数时无需指定参数类型。
def say(name){ println name}
指定参数的默认值
def say(name, word = "Hello ") { println word + name}say("Jack") //Hello Jacksay("Mary", "Good bye ") //Good bye Mary
A:
使用参数默认值来代替方法重载
返回值
Groovy 总是会自动返回方法最后一个表达式的值,无需手动调用 return 语句。
def add(x, y) { x += x y += y x + y}assert 16 == add(3, 5)
A:
只在必要时显示使用 return 语句
函数字面值
概述
- 函数字面值的定义和使用都近似方法,但是其可以被赋值给变量,从而可以被传递和执行
- 定义了一个函数字面值又被称为定义了一个闭包,从形式上看是由
{}
包围的代码块,是一个可执行的代码块 - 闭包实际是一个匿名内部类的对象
- 闭包可以嵌套,方法不能嵌套
定义一个闭包
与方法不同,没有表示参数的括号,而多了等号
def excite = { word -> return "${word}!!"}
使用默认参数
def d = {name, address = 'Shanghai'->}
调用闭包
assert "Groovy!!" == excite("Groovy")assert "Java!!" == excite.call("Java")
it
it
表示闭包内部的单个参数,所以定义闭包时如果只有单个参数,可以按如下方式简写
def learn = { it}assert "Groovy" == learn("Groovy")
A:
使用 it 来表示单个参数
0 0
- groovy 速学 - 05 - 方法,函数与闭包
- 2Groovy闭包与方法引用
- Groovy学习笔记之块、闭包与函数
- groovy 速学 - 01 - 安装与运行
- groovy 速学 - 24 - 与 Java 互调
- groovy 速学 - 31 - Builder 与 Template
- groovy中的闭包及常用方法
- 10.5在Java中创建与传递Groovy闭包(在java中调用groovy方法,并且传递闭包参数)
- JavaScript闭包与Groovy闭包区别
- groovy 速学 - 02 - 数据类型与作用域
- groovy 速学 - 06 - 流程控制与范围
- Groovy闭包
- Groovy 中的闭包
- groovy 闭包
- Groovy 闭包
- Groovy的闭包
- groovy 闭包
- Groovy闭包理解
- Android Gif播放控件
- git 合并两个远程库
- C++学习笔记(一)
- 第四周项目三:用对象数组操作长方体类
- 17-java5阻塞队列的应用
- groovy 速学 - 05 - 方法,函数与闭包
- VMware 网络连接设置 ping ARM开发板
- 简单说设计模式6原则
- jsp页面传递参数的几种方法总结以及一个在线聊天案例
- Linux入门:操作目录和文件的命令
- 时间类
- 让年轻程序员少走弯路的14个忠告
- 关于对web.Config文件详细介绍
- hdu 5195 求最大拓扑序列 拓扑+贪心