Swift函数的使用
来源:互联网 发布:mac版围棋对弈软件 编辑:程序博客网 时间:2024/06/06 01:18
函数
//1.定义函数
func 函数名(传入的值:String) ->String{
return 传入的值
}
//2.函数的调用
let 传入值 = "hallow xiaozhou"
println("函数调用的结果为:\(函数名(传入值))")
//函数调用的结果为:hallow xiaozhou
//3.函数的形式参数和它的返回值
//3.1多参和无参
//3.1.1 多参
func 长度(起始值:Int,终止值:Int) ->Int {
return 终止值 - 起始值
}
println("多参的最终结果为:\(长度(2,6))")
//多参的最终结果为:4
//3.1.2无参
func 问候语() -> String {
return "你好"
}
println("接电话时,礼貌的做法是:第一句说\(问候语())")
//接电话时,礼貌的做法是:第一句说你好
//3.2无返回值
func 显示并计数(字符串:String){
println("\(字符串)的长度为\(countElements(字符串))")
}
显示并计数("泪滴嘎嘎")
//泪滴嘎嘎的长度为4
//3.3多返回值(返回值为元祖)
func 取极值(数组:[Int]) -> (max:Int,min:Int) {
var 最大值 = 数组[0]
var 最小值 = 数组[0]
for 变数 in 数组 {
if 变数 > 最大值 {
最大值 = 变数
}elseif 变数 < 最小值 {
最小值 = 变数
}
}
return (最大值,最小值)
}
let array = [2,10,-1,23,72,7,1,100]
let (max,min) = 取极值(array)
println("数组\(array)中最大值为:\(max),最小值为:\(min)")
//数组[2, 10,-1, 23, 72, 7, 1, 100]中最大值为:100,最小值为:-1
//3.4可选元祖返回,添加"?"变为可选
func 取极值2(数组:[Int]) -> (max:Int,min:Int)? {
if 数组.isEmpty {
returnnil
}else{
var 最大值 = 数组[0]
var 最小值 = 数组[0]
for 变数 in 数组 {
if变数 > 最大值 {
最大值 = 变数
}elseif 变数 < 最小值 {
最小值 = 变数
}
}
return(最大值,最小值)
}
}
//[Int]()空数组
let 极值 = 取极值2([Int]())
println("极值为:\(极值)")
//极值为:nil
let 极值2 = 取极值2([1,2,3,4,0])
println("极值2为:\(极值2)")
//极值2为:(4, 0)
//4.本地参数和外部参数
//4.1有外部参数的函数(姓名,性别都是外部参数)
func 个人信息(姓名 name:String,性别 sex:String) ->String{
return "你的姓名为:\(name),性别为:\(sex)"
}
let 信息 = 个人信息(姓名: "小周", 性别:"女")
println("个人信息:\(信息)")
//个人信息:你的姓名为:小周,性别为:女
//4.2本地参数名和外部参数名的统一(#)
func 个人信息2(#姓名:String,#性别:String) ->String{
return "你的姓名为:\(姓名),性别为:\(性别)"
}
//调用结果与方式与有外部参数的函数一样,但这样更简洁
let 信息2 = 个人信息2(姓名: "小周", 性别:"女")
println("个人信息:\(信息2)")
//个人信息:你的姓名为:小周,性别为:女
//5.参数默认值
func 个人信息3(姓名:String,性别:String ="男") ->String {
return "你的姓名为:\(姓名),性别为:\(性别)"
}
//5.1调用方法一:不用默认值("性别:"->有参数默认值自动把本地参数变成外部参数名 )
let 信息3 = 个人信息3("小周", 性别:"女")
println("个人信息:\(信息3)")
//个人信息:你的姓名为:小周,性别为:女
//5.2调用方法二:用默认值
let 信息4 = 个人信息3("小周")
println("个人信息:\(信息4)")
//个人信息:你的姓名为:小周,性别为:男
//6.可变参数(数组集:Int...传的数组个数不一样),如果有多个参数,一定要把可变参数放在最后,不易混淆
func 求和(其他值:String,数字集:Int...) ->Int{
var 和 = 0
for 值 in 数字集 {
和 += 值
}
return 和
}
//1,2,3,5数字集,还可以向后面添加值,如:1,2,3,5,6,8,4,3,9等
let 和 = 求和("10", 1,2,3,5)
println("和为:\(和)")
//和为:11
//7.可变参数
let 名字 = "小周"
//必须是”var“,不然默认是“let”,不可变
func 居右对齐(var 原文本:String ,长度:Int,填充字符:String) ->String{
let 要填充的长度 = 长度 - countElements(原文本)
for _ in 1...要填充的长度 {
原文本 = 填充字符 + 原文本
//在原文本的前面添加填充字符
}
return 原文本
}
let b = 居右对齐(名字, 10,"@")
println(b)
//@@@@@@@@小周
//8.In-Out参数(可以直接改变传进去参数的值)
func 交换值(inout a:Int,inout b:Int){
let tem= a
a = b
b = tem
}
var a1 = 10,a2 = -10
交换值(&a1, &a2)
println("a1原来的值为10,现在为\(a1),a2原来的值为-10,现在为\(a2)")
//a1原来的值为10,现在为-10,a2原来的值为-10,现在为10
//9.函数类型作为变量和常量
func 两个数相加(a:Int,b:Int)->Int {
returna+b
}
func 两个数相乘(a:Int,b:Int)->Int {
returna*b
}
var 临时 = 两个数相加
临时(2,5)//7
临时 = 两个数相乘
临时(2,5)//10
//10.函数类型作为参数
func 显示相乘结果 (a:Int,b:Int,相乘函数:(Int,Int) ->Int) {
let 结果 = 相乘函数(a,b)
println("\(a)乘\(b)等于\(结果)")
}
显示相乘结果(10,100,两个数相乘)
//10乘100等于1000
//11.嵌套函数(函数里面有函数)
func 判断加减(正:Bool) -> (Int)->Int {
//对外不可见
func 加(数:Int) ->Int{
return数+1
}
func 减(数:Int) ->Int{
return数-1
}
return 正 ? 减 : 加
}
- Swift函数的使用
- Swift 函数的基本使用
- Swift 函数的各种使用
- swift中的函数的使用,嵌套
- 10、Swift语言中函数的使用
- 日期函数的使用(swift)
- swift(六)函数的简单使用
- swift 函数使用注意事项
- Swift--07函数使用
- Swift的?语法在函数参数的使用
- Swift的基本使用(2)函数的定义
- 善变的Swift函数
- Swift下的函数
- Swift的学习(函数)
- Swift学习——函数的使用和分类(四)
- iOS讲解迷惑--Swift中函数的使用
- 23.使用Swift自带的join函数拼接字符串
- Swift学习记录 -- 11.函数的基本使用
- DDMS中File Explorer无法查看data/data文件解决办法
- 【OC易错】OC易出错的地方
- android:versionCode和android:versionName 用途
- 关于android尺寸单位换算
- JNI回调时线程安全的处理
- Swift函数的使用
- 2015-3-31 浏览器本地缓存问题
- 【C++基础之八】函数指针和回调函数
- uboot 读书笔记【1】
- 乌鲁木齐爱德华医院2015年全国第13个爱鼻日健康公益活动
- 中国银行支付接口(ecshop版)
- Arm Reference
- RabbitMQ消息队列(二):”Hello, World“(转)
- potplayer打开多个视频文件