Functions

1、不带返回值的函数:

  

2、通过tuple返回元素

  

  返回的tuple可按如下方式使用:

  

3、External Parameter:

  

  External parameter的使用:

    

4、Shorthand external parameter:

  

5、Default Parameter:

  

  Default Parameter自动定义了external parameter:

  

  

6、Variadic Parameters,变长参数,在类型后面加上...:

  

7、Variable Parameter,函数参数默认是const,即函数body内无法改变参数值。要想在函数body内改变此值,需用var声明参数。

  

8、In-out参数:

  

  使用in-out参数:

  

9、FunctionType:

  

  可以在String Interpolation中调用函数:

  

10、FuntionType as Parameter Type:

  

11、FunctionType as Return Type:

  

Closures

1、三种Closure:

  

2、Closure Expression Syntax:

  

  

3、Inferring Type From Context

  

  在单表达式Closure的情况下,return也可以省略:

  

4、Shorthand Argument Names,通过数字

  

5、Operator Function

  

6、Trailing Closure

  

  array.map使用Trailing Closure的例子:

  

7、下述代码中,runningTotal会capture reference:

  

8、Closure are reference types。

Functions & Closures的更多相关文章

  1. "Becoming Functional" 阅读笔记+思维导图

    <Becoming Functional>是O'Reilly公司今年(2014)7月发布的一本薄薄的小册子,151页,介绍了函数式编程的基本概念.全书使用代码范例都是基于JVM的编程语言, ...

  2. flex Bindable

    [Bindable]大概又是Flex用得最多的元数据了.刚开始用用确实好简单,效率真是没的说.不过这几天用着却碰到了些问题,我自己搜集了些资料,想着有必要在blog里总结一下吧. 啥是元数据(meta ...

  3. 推荐JVM的9款编程语言杀手开发利器

    随着各种各样的编程语言铺地盖地向我们涌来,软件世界似乎变得有点疯狂了.JVM的帝国在不断地壮大,它已经不满足于只作为Java语言的运行平台.它勇敢地将自己的触角伸向了JRuby,Groovy等等,未来 ...

  4. Go by Example

    Go by Example Go is an open source programming language designed for building simple, fast, and reli ...

  5. PHP 使用用户自定义的比较函数对数组中的值进行排序

    原文:PHP 使用用户自定义的比较函数对数组中的值进行排序 usort (PHP 4, PHP 5) usort —      使用用户自定义的比较函数对数组中的值进行排序 说明       bool ...

  6. Kotlin 初窥门径[1]:基础概念

    Kotlin 是由 JetBrains 开发的基于JVM的语言.JetBrains 因为创造了一个强大的Java开发 IDE(Intellij) 而被大家所熟知.Android Studio 就是基于 ...

  7. 2017年11月GitHub上最热门的Java项目出炉

    2017年11月GitHub上最热门的Java项目出炉~ 一起来看看这些项目你使用过哪些呢? 1分布式 RPC 服务框架 dubbohttps://github.com/alibaba/dubbo S ...

  8. 什么是Kotlin?Java的替代语言?

    什么是Kotlin Kotlin是一个基于JVM的新的编程语言,2010年由IntelliJ IDEA所在的JetBrains公司开发,自2012年以来一直开源. Kotlin可以编译成Java字节码 ...

  9. A re-introduction to JavaScript (JS Tutorial) 转载自:https://developer.mozilla.org/en-US/docs/Web/JavaScript/A_re-introduction_to_JavaScript

    A re-introduction to JavaScript (JS Tutorial) Redirected from https://developer.mozilla.org/en-US/do ...

随机推荐

  1. As3 Practises : use TheMiner do as3 project swf performance profile , find memory leak!

    The second and most universal way is to launch it from the mm.cfg fileTheMiner.swf must be trusted1: ...

  2. c++ 字符串查找函数

    头文件:#include <string.h> 定义函数:int strcasecmp (const char *s1, const char *s2); 函数说明:strcasecmp( ...

  3. 前端之css样式01

    选择器,css文本属性 CSS语法: 选择器 {属性1: 值1; 属性2: 值2} CSS放置的位置: 1. 直接写在标签里面,通过style属性来设置CSS样式 2. 在head标签里面通过styl ...

  4. 从云主机上下载文件到本地+获取外网地址(linux & Windows)

    云主机上下载有集中方法,腾讯论坛有一遍文章:向云服务器上传下载文件方法汇总 货比三家,最终还是选择了rsync 下载代码如下 rsync ubuntu@123.207.251.217:/var/www ...

  5. (五)java进制

    进制 整数的表示 十进制:   0-9,  满10进1 八进制:   0-7,  满8进1,以0开头 每三位表示一位,三位数中最大的是111,111是7,7是八进制中最大的基数 十六进制:0-15,满 ...

  6. 自己搭建MVC时遇到的一些问题及解决办法

    错误1 The view 'Index' or its master was not found or no view engine supports the searched locations. ...

  7. SQl_case when

  8. 【Swift 】- 闭包

    闭包是自包含带函数代码块,可以在代码中被传递和使用.我觉得可以这样理解:闭包相当于C#中的lambda表达式: 全局函数和嵌套函数,实际也是特殊的闭包. 通常闭包是以下三种形式: a,全局函数是一个有 ...

  9. 支付宝RSA签名

    1.参考网上相关文章,开放php中的openssl,但使用网上例子调用openssl_pkey_new,一直报100013错误.后改用用支付宝提供的SDKdemo程序 发现使用提供的privkye,可 ...

  10. 程序4-3 umask函数实例

    //http://blog.chinaunix.net/uid-24549279-id-71355.html /* ========================================== ...