Swift得知——使用和分类功能(四)
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得知——使用和分类功能(四)的更多相关文章
- keras系列︱人脸表情分类与识别:opencv人脸检测+Keras情绪分类(四)
引自:http://blog.csdn.net/sinat_26917383/article/details/72885715 人脸识别热门,表情识别更加.但是表情识别很难,因为人脸的微表情很多,本节 ...
- 怎么用MindMapper分类功能整理导图
我们在绘制导图时是按着我们大脑中的思维来的,虽然有着总体逻辑,但是在细节上面还是不可避免的有些小杂乱,我们则可以通过MindMapper分类功能来对导图进行整理. 我们在打开MindMapper思维导 ...
- (三)微信小程序首页的分类功能和搜索功能的实现笔记
就在昨天,微信宣布了微信小程序开发者工具新增“云开发”功能 下载最新的开发者工具,现在无需服务器即可实现小程序的快速迭代! 分类功能和搜索功能的效果图 1.首页分类功能的实现 boxtwo方法(.js ...
- 我在开发第一个Swift App过程中学到的四件事
本文转载至 http://www.itjhwd.com/wzkfyigeswiftsjs/ 译者注:本文作者Greg Heo,这是他为讲授iOS 8 App Extensions视频教程而实际使用Sw ...
- iOS开发 - Swift使用GCD实现计时器功能
前言 开发中,经常会用到定时执行网络请求.倒计时.计时器等功能,本篇文章介绍在iOS开发中,Swift怎样使用GCD实现这些功能. 执行一次 下面的代码将会在5秒后执行,且只执行一次. let tim ...
- iOS开发之使用UICollectionView实现美团App的分类功能【偶现大众点评App的一个小bug】
郝萌主倾心贡献,尊重作者的劳动成果,请勿转载. 假设文章对您有所帮助,欢迎给作者捐赠,支持郝萌主,捐赠数额任意,重在心意^_^ 我要捐赠: 点击捐赠 Cocos2d-X源代码下载:点我传送 游戏官方下 ...
- swift UI专项训练39 用Swift实现摇一摇功能
微信的摇一摇功能想必大家都用过,过春节的时候抢红包也没少摇吧,那么用swift语言怎样实现这么酷炫的功能呢.摇动属于IOS内置可识别的一种动作,在你须要实现摇动功能的viewcontroller中.在 ...
- iOS开发项目实战——Swift实现ScrollView滚动栏功能
手机作为一个小屏设备,须要显示的信息往往无法在一个屏幕上显示,此时就须要使用到滚动栏,当然除了像TableView这样能够自带滚动功能的. 假设一个界面上View较多,那就必须要使用到ScrollVi ...
- Swift 中异常抛出和四种异常处理
在Swift中你可以像其他语言一样抛出异常处理异常,今天我们就详细地说说Swift中的异常抛出和处理. 在一开始我们要定义错误或者说是异常,Swift中的一些简单异常可以使用枚举定义,注意这个枚举要继 ...
随机推荐
- Ubuntu通过使用PyCharm 执行调试 Odoo 8.0 可能的问题
实现步骤,请移步http://shine-it.net/index.php?topic=16603.0 或 http://www.mindissoftware.com/2014/09/11/Run-O ...
- Linux(Centos)中tcpdump参数用法详解(转)
在linux下进行编程开发的人尤其是网络编程的人会经常需要分析数据包,那么一定会用到tcpdump,下面就是关于tcpdump的使用方法说明(1). tcpdump的选项 -a 将网络地址 ...
- OC动态创建的问题变量数组.有数组,在阵列13要素,第一个数据包阵列,每3元素为一组,分成若干组,这些数据包的统一管理。最后,一个数组.(要动态地创建一个数组).两种方法
<span style="font-size:24px;">//////第一种方法 // NSMutableArray *arr = [NSMutable ...
- 的无线通信网络的学习LTE的关键技术HARQ(20141217)
今天,我们就来一起看一下LTE申请的关键技术HARQ(自己主动混合重传技术) 因为在信道传输过程中的信息,它会产生信息丢失,因此,为了维持的信息的完整性.总是有重发信息,完成所有的迄今收到的资料. 首 ...
- Android使用开源项目Xutils实现多线程下载文件
#1.下载utils项目 https://github.com/wyouflf/xUtils #2布局文件里实现UI <LinearLayout xmlns:android="http ...
- NYOJ 372 巧克力的
巧克力 时间限制:4000 ms | 内存限制:65535 KB 难度:2 描写叙述 布欧能够把人变成巧克力吃了来添加他的能量,也有可能降低. 如今布欧变了n*m个巧克力,并把巧克力排成一个n*m ...
- MailTest
GridBagLayout把一个界面分为m行n列的网格 GridBagConstraints的一个实例:gridx = 2; // X2,表示组件位于第2列gridy = 0; // Y0,表示组件位 ...
- BC 2015在百度之星程序设计大赛 - 预赛(1)(矩形区域-旋转卡)
矩形区域 Accepts: 717 Submissions: 1619 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 ...
- Hybrid app 发展历程
距离上一篇<基于微信 js-sdk 的简单应用>已经快一年了,说来真是惭愧.上次不久之后便换了工作,一直处于比较忙的状态.其次后面酣畅一段时间都没有从事移动相关的工作.直到今年3月份开始, ...
- SenchaTouch2.3.1 正在使用listpaging以及pullrefresh插入 分页演示样品做
实际上本实施例是相对简单的.自定义PullRefreshFn插头继承Ext.plugin.PullRefresh. 主要是其附加refreshFn下拉监控事件. listpaging么改动.再将这两个 ...