当前位置: 首页 > news >正文

网站搭建平台都有哪些厦门市建设工程质量安全协会网站

网站搭建平台都有哪些,厦门市建设工程质量安全协会网站,wordpress 记录密码,口碑营销渠道一、函数 1.1函数定义 使用 func 来声明一个函数,使用名字和参数来调用函数。使用 -> 来指定函数返回值的类型。 示例:拼接字符串 //有参数和返回值的函数 func append1(name : String, description : String) -> String {return "\(name)…
一、函数 

1.1函数定义


使用 func 来声明一个函数,使用名字和参数来调用函数。使用 -> 来指定函数返回值的类型。
示例:拼接字符串

//有参数和返回值的函数
func append1(name : String, description : String) -> String {return "\(name) is \(description)"
}//调用
append1(name: "Tony", description: "good")

运行结果:

 
默认情况下,函数会使用默认的参数名称作为参数标签,如果需要自定义参数标签,示例如下
"youName"和"youHabby"是自定义的标签

//在参数名称前自定义参数标签
func CustomParameterLabels(youName name : String, youHabby habby : String) -> String {return "\(name)'s hobbies is \(habby).(Custom parameter labels)"
}CustomParameterLabels(youName: "Tony", youHabby: "cutting hair")

运行结果:

如果不想使用传输标签,可以使用"_“来实现

//不使用参数标签,可以使用"_"来表示
func NoneParameter(_ name : String, habby : String) -> String {return "\(name)'s hobbies is \(habby).(Parameter-free labels)"
}NoneParameter("Tony", habby: "cutting hair")

运行结果:
 

 如果函数需要返回多个值,可以使用元组来实现。示例
这里返回多个值没有参数标签

func getMultipleValues() -> (Int, String, Bool) {return (42, "Hello", true)
}// 调用示例
let result = getMultipleValues()

运行结果:

 如果需要返回的多个值是有标签的,参考如下:

//返回带参数标签的多个值
func getMultipleValues() -> (minScore : Int, maxScore : Int, totalScore : Int) {return (42, 99, 141)
}// 调用示例
let result = getMultipleValues()print(result.0)
print(result.minScore)

运行结果:

1.2函数嵌套,复合使用 

函数内可以继续嵌套函数来处理较长或者复杂的实现。示例;

//整数转字符串
func IntToString(score : Int) -> String {//加多十分func toString(score : Int) -> Int{var score = score + 10return score}var newScore = toString(score: score)return "\(newScore)"
}IntToString(score: 90)

运行结果:
 

函数也可以当做返回值,使用示例如下:
 

func addScore() -> ((Int) -> Int) {//加多十分func addTenScore(score : Int) -> Int{return score + 10}return addTenScore
}//调用,返回一个函数
var myFunc = addScore()
//调用这个函数
myFunc(80)

函数也可以作为参数传入。如下
 

func hasAnyMatches(list: [Int], condition: (Int) -> Bool) -> Bool {for item in list {if condition(item) {return true}}return false
}
func lessThanTen(number: Int) -> Bool {return number < 10
}
var numbers = [20, 19, 7, 12]
hasAnyMatches(list: numbers, condition: lessThanTen)
1.3闭包


闭包(Closure)是一块自包含的代码,可以在代码中被传递和使用。闭包可以捕获和存储其所在上下文中的变量和常量的引用

闭包的基础语法:
​​​​​​​

// 闭包的基本形式
{ (parameters) -> returnType in// 闭包的实现代码
}
  • parameters 是闭包的输入参数(可以为空)。
  • returnType 是闭包的返回值类型(可以省略,Swift 会推断)。
  • in 关键字分隔了闭包的参数和实现代码。

简单闭包的实现:
 

// 一个简单的闭包,接收两个整数,返回它们的和
let add: (Int, Int) -> Int = { (a, b) inreturn a + b
}// 使用闭包
let result = add(3, 5)
print(result)  // 输出 8

闭包捕获值
 

func makeIncrementer(incrementAmount: Int) -> () -> Int {var total = 0let incrementer: () -> Int = {total += incrementAmount  // 捕获 incrementAmount 和 totalreturn total}return incrementer
}let incrementByTwo = makeIncrementer(incrementAmount: 2)
print(incrementByTwo())  // 输出 2
print(incrementByTwo())  // 输出 4

在这个例子中,incrementByTwo 捕获了 incrementAmount 和 total,每次调用 incrementByTwo() 时,total 都会增加 2。

闭包作为函数参数
闭包常常用作函数的参数,特别是在处理异步操作、回调等情况时,在网络请求中用的最多。例如:
​​​​​​​

func fetchData(completion: @escaping (String) -> Void) {// 模拟网络请求DispatchQueue.global().async {// 模拟延迟Thread.sleep(forTimeInterval: 2)DispatchQueue.main.async {completion("数据加载完成")}}
}fetchData { data inprint(data)  // 输出 "数据加载完成"
}

使用闭包时管理好对外部对象的引用.

http://www.yayakq.cn/news/702328/

相关文章:

  • 电子商务网站建设名词解释360网站推广官网网址
  • 北京市建设部网站济南网站建设搜点网络
  • 网站制作品牌有哪些上海网站设计与制
  • 展示型企业网站有哪些温州大都市建设开发有限公司网站
  • 沈阳公司网站制作资源网站
  • 网站丢失了怎么办c 网页开发
  • 国外中文网站排行做母亲节网站的素材
  • php网站开发更换模板wordpress插件推荐
  • 长安网站设计西服定制一般多少钱
  • 聊城网站开发手机开发网站建设
  • 无极限网站模板wordpress滑动
  • 济南网站开发培训班寺庙网站开发策划书
  • 绍兴做微网站长沙仿站模板网站建设
  • 网站首页可以做竖版吗wordpress 多说评论插件
  • 实验室网站建设的意义ppt主题大全素材
  • 电子商城网站开发 pdf想做企业网站
  • 电子商务网站建设的代码网络营销都有哪些
  • 企业建站系统漏洞深圳网站开发建设
  • 免费建站的房管网查询中心
  • 网站制作工具 简易网站备案资料下载
  • 做网站有必要凡客建站登录
  • 做公司网站需要什么材料企业网络专线
  • 营销型网站制作价格网页翻译用不了
  • ps工具设计网站网站建设升级的必要性
  • 客户做网站要退款赣州微网站建设费用
  • 全球设计网站有哪些黑帽seo寄生虫
  • 海城网站制作建设互联网公司市值
  • 苏州网站建设公司哪家好医疗器械生产质量管理规范
  • 贵阳公司网页网站建设贵阳网站公司
  • 网站建设提供的网站资料商务网站建设定义