Swift得知——使用和分类功能(四)

总结Swift该功能使用的总可分为七类

1 ---- 没有返回值,没有參数的函数

2 ---- 有參数和返回值的函数

3 ---- 使用元祖来返回多个值

4 ---- 參数是可变的

5 ---- 函数的嵌套

6 ---- 函数能够作为还有一个函数的返回值

7 ---- 函数能够作为參数

详细分析如以下代码所看到的

// 1 ---- 没有返回值。没有參数的函数

func function1()
{
println("----in function1----")
} //调用函数
function1() // 2 ---- 有參数和返回值的函数 func function2(name:String,age:Int)->String{
println("----in function2----")
return "name \(name),age \(age)"
} //调用函数 println(function2("jhon",22)) // 3 ---- 使用元祖来返回多个值 func function3()->(Int,Int,Int){
println("----function3----")
return (1,2,3)
}
//调用函数
println(function3()) // 4 ---- 參数是可变的 func functionsum4(numbers:Int...)->Int{
println("----in functionsum4----")
var sum = 0
for number in numbers{
sum += number
}
return sum
} //调用函数
println("sum is \(functionsum4(1))")
println("sum is \(functionsum4(1,2))")
println("sum is \(functionsum4(1,2,3))") // 5 ---- 函数的嵌套 /*
说明:被嵌套的函数能够訪问外側函数变量 */ func function5()->Int{
println("-----in function5-----")
var m = 5 func sum(){
m += 1
}
sum()
return m
} //调用函数 println("function5 is \(function5())") // 6 ---- 函数能够作为还有一个函数的返回值 func function6()->(Int->Int){
println("----int function6 ----")
func sum(numbers:Int)->Int{
return numbers+1
}
return sum
} //获取外側函数的值
var values = function6() //values(1)对内側函数进行传參数
println("sum is \(values(1))") // 7 ---- 函数能够作为參数 func function7(number:Int[],contion:Int->Bool)->Bool{
for numbers in number{
if contion(numbers)
{
println("----true")
return true
} }
return false
} func choosefunc(number:Int)->Bool{
return number<10
} var number = [1,2,3,4] function7(number,choosefunc) println("result is \(function7(number,choosefunc))")

打印结果

----in function1----

----in function2----

name jhon,age 22

----function3----

(1, 2, 3)

----in functionsum4----

sum is 1

----in functionsum4----

sum is 3

----in functionsum4----

sum is 6

-----in function5-----

function5 is 6

----int function6 ----

sum is 2

----true

----true

result is true

版权声明:本文博主原创文章,博客,未经同意不得转载。

Swift得知——使用和分类功能(四)的更多相关文章

  1. keras系列︱人脸表情分类与识别:opencv人脸检测+Keras情绪分类(四)

    引自:http://blog.csdn.net/sinat_26917383/article/details/72885715 人脸识别热门,表情识别更加.但是表情识别很难,因为人脸的微表情很多,本节 ...

  2. 怎么用MindMapper分类功能整理导图

    我们在绘制导图时是按着我们大脑中的思维来的,虽然有着总体逻辑,但是在细节上面还是不可避免的有些小杂乱,我们则可以通过MindMapper分类功能来对导图进行整理. 我们在打开MindMapper思维导 ...

  3. (三)微信小程序首页的分类功能和搜索功能的实现笔记

    就在昨天,微信宣布了微信小程序开发者工具新增“云开发”功能 下载最新的开发者工具,现在无需服务器即可实现小程序的快速迭代! 分类功能和搜索功能的效果图 1.首页分类功能的实现 boxtwo方法(.js ...

  4. 我在开发第一个Swift App过程中学到的四件事

    本文转载至 http://www.itjhwd.com/wzkfyigeswiftsjs/ 译者注:本文作者Greg Heo,这是他为讲授iOS 8 App Extensions视频教程而实际使用Sw ...

  5. iOS开发 - Swift使用GCD实现计时器功能

    前言 开发中,经常会用到定时执行网络请求.倒计时.计时器等功能,本篇文章介绍在iOS开发中,Swift怎样使用GCD实现这些功能. 执行一次 下面的代码将会在5秒后执行,且只执行一次. let tim ...

  6. iOS开发之使用UICollectionView实现美团App的分类功能【偶现大众点评App的一个小bug】

    郝萌主倾心贡献,尊重作者的劳动成果,请勿转载. 假设文章对您有所帮助,欢迎给作者捐赠,支持郝萌主,捐赠数额任意,重在心意^_^ 我要捐赠: 点击捐赠 Cocos2d-X源代码下载:点我传送 游戏官方下 ...

  7. swift UI专项训练39 用Swift实现摇一摇功能

    微信的摇一摇功能想必大家都用过,过春节的时候抢红包也没少摇吧,那么用swift语言怎样实现这么酷炫的功能呢.摇动属于IOS内置可识别的一种动作,在你须要实现摇动功能的viewcontroller中.在 ...

  8. iOS开发项目实战——Swift实现ScrollView滚动栏功能

    手机作为一个小屏设备,须要显示的信息往往无法在一个屏幕上显示,此时就须要使用到滚动栏,当然除了像TableView这样能够自带滚动功能的. 假设一个界面上View较多,那就必须要使用到ScrollVi ...

  9. Swift 中异常抛出和四种异常处理

    在Swift中你可以像其他语言一样抛出异常处理异常,今天我们就详细地说说Swift中的异常抛出和处理. 在一开始我们要定义错误或者说是异常,Swift中的一些简单异常可以使用枚举定义,注意这个枚举要继 ...

随机推荐

  1. directx11编程中遇到的错误及解决方法

    (2016-05-10)xnamath.h 报错: 在标识符"XMConvertToRadians"的前面 报错如下: >d:\program files\microsoft ...

  2. 手提wifi双卡配置+window7同时多用户远程+有些公司限制网络环境方案

    该公司只提供几台机器,同时限制并连接到内部办公网络的机, 我们更多的临时工作人员,项目紧张,而另一种是太麻烦了申请, 当被问及其他网络管理,说没有变通方法. 在我的尝试,最后,找到一个解决方案; 解决 ...

  3. servlet(jsp)中的重定向和转发

    servlet(jsp)中的重定向和转发 由一个servlet(jsp)从内部转向还有一个servlet(jsp)有两种方式:转发和重定向. 转发:是由一个web组件(servlet)将未完毕的处理交 ...

  4. Apidemos--&gt;Views-Lists-Cursor(people)学�

    Apidemos-->Views-Lists-Cursor(people)-主要用到了获取手机联系人信息,属于内容提供者的范畴,要想了解这方面的内容,能够參考官方docs /sdk/docs/g ...

  5. C#和C++下数据类型对应表

    /C++中的DLL函数原型为//extern "C" __declspec(dllexport) bool 方法名一(const char* 变量名1, unsigned char ...

  6. ComboBox 自动调整组合框下拉部分的宽度

    /// <summary>        /// ComboBox 自动调整组合框下拉部分的宽度        /// </summary>        void Resiz ...

  7. * 类描写叙述:字符串工具类 类名称:String_U

    /****************************************** * 类描写叙述:字符串工具类 类名称:String_U * ************************** ...

  8. mac eclipse svn subeclipse: Failed to load JavaHL Library.

    Failed to load JavaHL Library. These are the errors that were encountered: no libsvnjavahl-1 in java ...

  9. MapReduce 规划 六系列 MultipleOutputs采用

    在前面的示例,输出文件名是默认: _logs part-r-00001 part-r-00003 part-r-00005 part-r-00007 part-r-00009 part-r-00011 ...

  10. 第三篇——第二部分——第六文 监控SQL Server镜像

    原文:第三篇--第二部分--第六文 监控SQL Server镜像 原文出处:http://blog.csdn.net/dba_huangzj/article/details/26846203 要优化, ...