Swift   发布时间:2022-03-31  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Swift学习:12.函数大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

1.函数的定义与调用 func sayHello(personName: String) -> String {     let greeTing = "hello, " + personName + "!"     return greeTing } 2.外部参数 func someFunction(externalParameterName localParameterName: int) {

1.函数的定义与调用

func sayHello(personName: String) -> String {

let greeTing = "Hello," + personName + "!"

return greeTing

}

2.外部参数

func someFunction(externalParameterName localParameterName: Int) {}

func containsCharacter(#String: String,#characterToFind: Character) -> Bool {}


3.可变参数

func arithmeticMean(numbers: Double...) -> Double {

var @R_353_10586@l: Double = 0

for number in numbers {

@R_353_10586@l += number

}

return @R_353_10586@l / Double(numbers.count)

}

arithmeticMean(1,2,3,4,5)

arithmeticMean(3,8,19)


4.认参数

func join(String s1: String,toString s2: String,withJoiner joiner: String = " ") -> String {

return s1 + joiner + s2

}

join(String: "Hello",toString: "world")


5.输入输出参数

func swapTwoInts(inout a: Int,inout b: Int) {

let temporaryA = a

a = b

b = temporaryA

}

var someInt = 3

var anotherInt = 107

swapTwoInts(&someInt,&anotherInt)


6.函数类型

func addTwoInts(a: Int,b: Int) -> Int {

return a + b

}

func multiplyTwoInts(a: Int,b: Int) -> Int {

return a * b

}

这两个函数的类型是(Int,int) -> Int,读作“这个函数类型,它有两个 Int 型的参数并返一个 Int 型的值。”

func printHelloWorld() {

println("Hello,world")

}

这个函数的类型是() -> (),读作“没有参数,并返回 Void 类型的函数

7.函数类型作为参数

func printMathResult(mathFunction: (Int,Int) -> Int,a: Int,b: Int) {

println("Result: \(@H_48_20@mathFunction(a,b))")

}

printMathResult(addTwoInts,5)

当printMathResult 被调用时,它被传入 addTwoInts 函数和整数3和5。它用传入3和5调用 addTwoInts,并输出结果:8。


8.嵌套函数

func chooseStepFunction(BACkWARDs: Bool) -> (Int) -> Int {

func stepForWARD(input: Int) -> Int { return input + 1 }

func stepBACkWARD(input: Int) -> Int { return input - 1 }

return BACkWARDs ? stepBACkWARD : stepForWARD

}

9.示例代码

func sayHello(#userName:String,age userAge:Int = 20)->String{

return "用户名\(userName) 年龄:\(userAge)"

}

func getName()->(name:String,age:Int){

println("No return")

return ("sn",24)

}

func countPerson(names:String...){

for name in names{

println(Name)

}

}

//println(sayHello("sn",24))

//sayHello(name: "sn",age: 24)

//sayHello(userName: <#String#>,age: <#Int#>)

println(sayHello(userName: "sn"))

var people = getName()

println(people.Name)

countPerson("Helen","Tom","Jike")


var myName = "sn"


func changename(inout name:String){

name = name + "AAA"

}

changename(&@H_762_551@myName)

println(@H_762_551@myName)


func alignRight(var String:String,countNum:Int,pad:String) -> String{

let num = countNum - count(String)

if num < 1{

return String

}

else{

for _ in 1...num{

String = pad + String

}

return String

}

}


let originalString = "Hello"

let paddedString = alignRight(originalString,10,"-")

println(paddedString)


func addTwoInts (a:Int,b:Int)->Int{

return a+b

}

//var mathFunction:(Int,int)->Int = addTwoInts

var mathFunction = addTwoInts

var num = @H_48_20@mathFunction(2,3)

println(num)


func printMathResault(mathFunction:(Int,Int)->Int,a:Int,b:Int){

println("result is \(@H_48_20@mathFunction(a,b))")

}

printMathResault(@H_762_551@mathFunction,5)


func stepForWARD (input:Int)->Int{

return input+1

}

func stepBACkWARD(input:Int)->Int{

return input-1

}

func chooseStepFunction(BACkWARDs:Bool)->(Int)->Int{

return BACkWARDs ? stepBACkWARD : stepForWARD

}

var value = -34

let moveNearToZero = chooseStepFunction(value>0)

while value != 0{

println("current value is \(value)")

value = moveNearToZero(value)

}

大佬总结

以上是大佬教程为你收集整理的Swift学习:12.函数全部内容,希望文章能够帮你解决Swift学习:12.函数所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。