《从零开始学Swift》学习笔记(Day 21)——函数返回值
返回值3种形式:无返回值、单一返回值和多返回值。
无返回值函数
所谓无返回结果,事实上是Void类型,即表示没有数据的类型。
无返回值函数的语法格式有如下3种形式:
func 函数名(参数列表) {
语句组
}
func 函数名(参数列表) ->() {
语句组
}
func 函数名(参数列表) ->Void {
语句组
}
无返回值函数不需要“return返回值”语句。
多返回值函数
两种方式来实现。
一种是在函数定义的时候,将函数的多个参数声明为引用类型传递,这样当函数调用结束时,这些参数的值就变化了。
另一种是将返回定义为元组类型。
介绍元组类型返回多值的实现。看一个示例:
1 2 3 4 5 6 7 8 9 10 | func position(dt: Double,speed:(x:Int, y:Int)) -> (x:Int, y:Int) { let posx:Int = speed.x * Int(dt) let posy:Int = speed.y * Int(dt) return (posx, posy) } let move = position( 60.0 , speed: ( 10 , - 5 )) print( "物体位移:\(move.x) , \(move.y)" ) |
参数speed:(x:Int,y:Int)是元组类型。
position函数的返回值是(x:Int,y:Int)的元组类型。
代码调用函数,传递的时期间是60.0秒,速度是(10, 5)。
输出结果,结果如下:
物体位移:600 , -300
本文转自 tony关东升 51CTO博客,原文链接:http://blog.51cto.com/tonyguan/1746403,如需转载请自行联系原作者

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
关于Android构建
“IDE都是给小白程序员的,大牛级别的程序员一定是命令行控,终端控,你看大牛都是使用vim,emacs 就一切搞定” 这话说的虽然有些绝对,但是也不无道理,做开发这行要想效率高,自动化还真是缺少不了命令行工具,因为只有命令行才是最佳的人机交互工具。其实 IDE也是底层也是调用命令行工具而已,只不过给普通开发者呈现一个更友好的开发界面。这里可不是宣扬让大家放弃IDE都改命令行,只是每种事物都有他存 在的理由,无论是编程语言还是工具都是一个原则 “没有最好的,只有最合适的”。 发布产品的时候为了统计各渠道流量免不了要构建不通的渠道包,你懂得国内渠道上 百个,靠IDE编译打包非吐血不可。这些重复劳动最适合交个程序来做,很多程序员想不明白这个问题,宁愿把大量的精力时间花在业务上,却不知道用工具提高工作效率。在这里写一篇简单的教程,告诉大家怎么脱离IDE环境完成一个android项目的编译构建,有了这基础开发什么自动化构建工具都不是什么难事了, 前一阵子做的一个打包html5应用的在线工具AppBuilder就是基于命令行构建完成的。 说到命令行自然是不需要图形界面,所以Android SDK的...
- 下一篇
RecyclerView基本使用
博客地址 背景 以前在展示列表时一直都是在使用ListView。 唯一的区别大概就是适配器Adapter的不同而已。 但是后来接触到了RecyclerView之后,就喜欢上了RecyclerView。 因此本篇打算说下RecyclerView的基本使用,给大家参考下。 正所谓“学以致用”,验明是否掌握了一门东西的最好方法是能够把这个东西讲给别人听,别人还能听懂。 所以基于此,本篇文章应运而生。 RecyclerView的好处 这里我就截取官网上的两段文字来说明。 Many apps need to display user-interface elements based on large data sets, or data that frequently changes. For example, a music app might need to display information about thousands of albums, but only a dozen of those albums might be on-screen at a time. If the a...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Mario游戏-低调大师作品
- CentOS8编译安装MySQL8.0.19
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- 2048小游戏-低调大师作品
- CentOS7,CentOS8安装Elasticsearch6.8.6
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- MySQL8.0.19开启GTID主从同步CentOS8
- Linux系统CentOS6、CentOS7手动修改IP地址
- Docker使用Oracle官方镜像安装(12C,18C,19C)