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中的一些简单异常可以使用枚举定义,注意这个枚举要继 ...
随机推荐
- JAVA开源爬虫,WebCollector,使用方便,有接口。
假设你想下载整个网站内容爬行动物,我不希望配置heritrix复杂的爬行动物,要选择WebCollector.项目github一个不断更新. github源地址:https://github.com/ ...
- Facebook新框架React Native,一套搞定App开发[转]
Facebook新框架React Native,一套搞定App开发 本文来自微信公众号“给产品经理讲技术”(pm_teacher),欢迎关注. 做为一名产品经理,你是否遇到过这样的窘境,“帮我把字体调 ...
- pig询问top k,每个返回hour和ad_network_id最大的两个记录(SUBSTRING,order,COUNT_STAR,limit)
pig里面有一个TOP功能.我不知道为什么用不了.有时间去看看pig源代码. SET job.name 'top_k'; SET job.priority HIGH; --REGISTER piggy ...
- Chrome console(转)
阅读目录 写在前面 谷歌控制台Elements面板 查看元素上绑定的事情 样式操作 总况 console.log console.info console.error console.warn con ...
- iOS_67控件外观对照
iOS 7 button无边框,操作栏透明,控制器全屏 Tab Bar 对照 iOS 7 ...
- IBatis.net初步使用
最近加班比较忙,时间也比较琐碎,蛮久没有写东西了.这次就总结一下自己使用IBatis.net的一些总结吧. IBatis简介 IBatis.net是一款开源的Orm框架,应该算是从java的IBati ...
- sqlserver system object type
select distinct s.type, s.type_desc from sys.objects as s inner join (select distinct type from sys. ...
- 查看SQLServer 代理作业的历史信息
原文:查看SQLServer 代理作业的历史信息 不敢说众所周知,但是大部分人都应该知道SQLServer的代理作业情况都存储在SQLServer5大系统数据库(master/msdb/model/t ...
- android Intent.createChooser 应用选择
在微博案例: 1.public void onClickShare(View view) { 2. 3. Intent intent=new Intent(Intent.ACTION_SEND); 4 ...
- nodejs http静态服务器
使用nodejs写的很简单的静态服务器,没有做cluster处理,没有做缓存处理,不支持访问文件夹,功能只有一个,就是获取到文件后再返回文件内容. var fs = require('fs'); va ...