Swift(三.函数)
一.swift中的函数分为以下几类吧
1>无参无返 2>无参有返 3>有参无返 4>有参有返 5>有参多返
二.看下面几个例子吧
1>无参无返
func about() ->Void{}
也可以写成func about() ->() {}
还可以写成func about() {}
2>无参有返
func readM() ->String{ return "字符串" }
3>有参无返
func eat(food : String) {}
4>有参有返
func sum(num1 : Int, num2 : Int) ->Int{return num1 + num2}
5>有参多返
func eat(food1 : String,food2: String) ->(String,String){
var first = "水"
var second = "牛奶"
if food1.characters.count > 0{
first = food1
}
if food2.characters.count > 0{
second = food2
}
return(first,second)
}
三.函数的使用注意
1>内参和外参,顾名思义,函数外面的就是外参,函数内部的就是内参.默认从第二个参数开始,又是内参又是外参,如果第一个参数也想成为外参,在变量名前面加一个标签就行,如果不想要外参,在参数前面加_+空格(还要加个空格)
2>默认参数,如果没有传入具体的参数,可以使用默认参数
3>可变参数,swift函数参数是可以变化的话,后面可以加... 但是要同一类型
4>默认情况下,参数是值传递,如果要改名外面的变量,那么要传该变量的地址,加个关键字 inout
5>函数可以嵌套,当有些常量或变量(比如地图里面需要获取2个地方的地标,但是在2个函数里面的话就不能把这2个地标直接进行渲染选择路线),过了该函数就释放了,但是同时需要2个函数的常量或变量值,那么可以嵌套函数来使用,在嵌套的函数里面可以同时获取2个常量或变量的值了
6>函数的类型,每个函数都可以有自己的类型,可以是基本数据类型,也可以是自定义的类型等,类型有参数和返回值类型组成.函数还可以作为方法参数或者返回值使用,总之在swift里面,函数的使用是非常灵活.具体怎么使用就需要经验的多多积累了.
Swift(三.函数)的更多相关文章
- Swift语法基础入门三(函数, 闭包)
Swift语法基础入门三(函数, 闭包) 函数: 函数是用来完成特定任务的独立的代码块.你给一个函数起一个合适的名字,用来标识函数做什么,并且当函数需要执行的时候,这个名字会被用于“调用”函数 格式: ...
- Swift系列三 - 函数
函数在任何语言中都是存在的,Swift中函数更加灵活. 一.函数的定义 1.1. 有返回值(形参默认是let,也只能是let) func pi() -> Double { return 3.14 ...
- Swift 语言函数
import Foundation // 函数声明于实现 func sayHello(name){ print("Hello \(name)") } // 函数调用 sayHell ...
- swift 之 函数
swift的函数跟脚本语言有很多神似之处. 如果有一天用swift开发服务器 ,很期待哇(一切皆有可能,毕竟人家说要跑在Linux上),
- Swift 中函数使用指南
关于Swift中的各种函数的使用的总结 前言 时间久了,好多东西我们就会慢慢忘记,在这里总结一下Swift中函数的使用原则,把大部分的函数使用技巧用代码示例来做了演示,但是如果想提高,还是要多多思考才 ...
- Python进阶(三)----函数名,作用域,名称空间,f-string,可迭代对象,迭代器
Python进阶(三)----函数名,作用域,名称空间,f-string,可迭代对象,迭代器 一丶关键字:global,nonlocal global 声明全局变量: 1. 可以在局部作用域声明一 ...
- 窥探Swift之函数与闭包的应用实例
今天的博客算是比较基础的,还是那句话,基础这东西在什么时候都是最重要的.说到函数,只要是写过程序就肯定知道函数是怎么回事,今天就来讨论一下Swift中的函数的特性以及Swift中的闭包.今天的一些小实 ...
- 窥探 Swift 之 函数与闭包的应用实例
今天的博客算是比较基础的,还是那句话,基础这东西在什么时候 都是最重要的.说到函数,只要是写过程序就肯定知道函数是怎么回事,今天就来讨论一下Swift中的函数的特性以及Swift中的闭包.今天的一些小 ...
- Swift学习——A Swift Tour 函数
Functions and Closures 函数和封闭性(闭包) Functions 函数的使用 Swift中的函数定义和OC中有明显的差别了,使用func定义函数,在括号里定义參数和类型,用 ...
随机推荐
- android95 缩放加载大图片
MainActivity: package com.itheima.loadimage; import android.os.Bundle; import android.app.Activity; ...
- java中最简单的方式新起一个线程
启动一个线程在一个方法中启动一个线程,有两种方法第一种是让类实现Runable接口,这样的话编译器就会提示你实现里面的未实现的方法(就是run方法)第二种是,现在方法中new一个线程,然后直接调用他的 ...
- 详解QUiLoader 动态加载.ui文件
http://blog.chinaunix.net/uid-13838881-id-3652523.html 1.适用情况: 动态加载UI文件是指,用 Qt Designer 通过拖拽的方式生产.ui ...
- ant来历
看看<ant权威指南>或者ant的网站吧,里面介绍得非常详细ant的来历,目的.ant是tomcat的一个副产品,是在开发tomcat过程中,开发人员需要一个整合编译工具,因为在一个大项目 ...
- [置顶] html学习笔记,锚点,超链接,table布局,表头,h,sub,blockquote,ul,li,ol.dl,加入收藏,打印,弹出窗口
<a name="shouye"></a> <strong>strong加粗</strong> <br> 没有加粗 &l ...
- maven项目在tomcat中运行遇到的问题
在使用maven构建项目,并在tomcat容器中运行的时候遇到了一些问题,现做一下记录 maven项目中jdk版本会自动恢复 maven项目的编译jdk即使在window -> java -&g ...
- linux下grep命令笔记
grep -i 不区分大小写 --color 添加颜色 alias grep=‘grep --color=auto’ -v 显示没有被模式匹配到的行 -o 只显示 ...
- angular下H5上传图片(可多张上传)
最近做的项目中用到了angular下上传图片功能,在做的过程中遇到了许多问题,最终都得以解决 angular上传时和普通上传时过程差不多,只不过是要不一些东西转化为angular的东西. 1.ng-f ...
- R-大数据分析挖掘(4-R爬虫实现)
library("XML") #获取全部的链接 url <- 'http://www.csdn.net/tag/' i_url_parse<-htmlParse(ur ...
- eclipse上传显示svn上传者名
这里来记录下eclipse上传显示svn上传者名. 如图所示,修改即可.