Swift 基础学习(一)

class ViewController: UIViewController {

override func viewDidLoad() {

super.viewDidLoad()

demo1()

demo2()

demo3()

lengthOfString(str1:"1234", str2: "5678")

//        let str = demo4()

print(demo4())

demo5(str1: "123", str2: "888")

// 闭包

//        (1)无参无返回值

closure()

//        (2)有参无返回值

closure1("hello")

//        (3)无参有返回值

closure2()

print(closure2())

//        (4)有参有返回值

closyre3("123", "455")

print(closyre3("123", "455"))

let newStrCount = newStringLength("world") { (a) -> String in

let b = "hellow\(a)"

return b

}

print("newStrCount = \(newStrCount)")

}

//    !!! swift 里面允许函数嵌套 ,并且外部不可见!!!!

//    调用的时候尽量不采用self

//    类名调用的函数前面加上class,这里的都是对象方法

//    如果一个类只要求在本类中调用,不希望外部可见,就加上private,UI空间的响应事件不要加上private

// 无参无返回值

//      格式: func 函数名(){}

func demo1(){

print("无参无返回值")

func demo11(){

print("---------")

}

// 调用

demo11()

}

func demo2()->(){

print("无参无返回值02")

}

func demo3()->Void{

print("无参无返回值03")

}

//有参无返回值

// 格式:func 函数名 (外部访问参数 参数:参数类型){},外部访问参数也可以不写

func lengthOfString(str1 str1:String, str2:String){

print("\(str1)和\(str2)的长度是\(str1.characters.count + str2.characters.count)")

}

// 无参有返回值

func demo4()->String {

let str = "123"

return str

}

// 有参有返回值

// 格式:func 函数名(参数列表)->返回值类型

func demo5(str1 str1:String, str2:String)->String {

// 形参在内部不能给改变

let str = "\(str1)\(str2)"

return str

}

//      闭包

//      闭包相当于C里面的block,封装了一段有特定功能的代码块

//      闭包的格式:

/*

{

(输入参数列表。。。)->返回值类型

in

闭包里面执行的代码块

}

*/

// 无参数无返回值

let closure = {

()->()

in

print("这是一个无参无返回值得闭包")

}

// 有参数无返回值

let closure1 = {

(str:String)->()

in

print("这是一个输入参数为\(str)的闭包")

}

// 无参有返回

let closure2 = {

()->Int

in

let b = "455"

let a:Int = b.characters.count

return a

}

// 有参有返回值

let closyre3 = {

(str1:String, str2:String)->Int

in

let str = "\(str1)\(str2)"

return str.characters.count

}


// 定义一个函数两个输入参数,其中一个是闭包,闭包的功能是将输入的第一个参数拼接上Hellow,返回一个新的字符串。函数的功能返回新字符串的长度

func newStringLength(str:String,closure4:(a:String)->String)->Int {

let str = closure4(a:str)

return str.characters.count

}

}

你可能感兴趣的:(Swift 基础学习(一))