Swift函数(6)

作者: _菩提本无树_ | 来源:发表于2020-07-09 17:46 被阅读0次

教程目录
与OC一样的内容不重复介绍

函数

这个没什么说的,所有的内容都在代码里面标注了,详情看下面的代码.

2020.07.09(第一更)

    /// 无参无返回值
    func funcParamNoneReturnNone() -> () {
        
    }
    /// 无参带返回值
    /// - Returns: string
    func funcParamNoneReturn() -> (String) {
        
        return "返回值";
        
    }
    /// 多参数
    func funcParamsNoneReturn(str : String,num : Int) -> () {
        
        
    }
    ///返回多个参数,使用元组,之前讲过
    func funcParamNoneReturns() -> (Int,Int) {

        return (1,2);
    }
    ///返回多个参数,还可以这样用,声明返回值的名字
    func funcParamNoneReturnOther() -> (min: Int,max: Int?) {
        
        return (1,nil);
        
    }
    ///对返回值进行可选处理
    func funcParamNoneReturnOtherOne(type: String) -> (min: Int,max: Int)? {
        if type == "1" {
            return nil;
        }else{
            return (1,2);
        }
    }
    //还有可以忽略return语句,我是不建议,所以就不写了
    
    ///参数标签label,他的作用是让函数语句表达更清晰,实际没什么作用
    func funcLabel(label data: String) -> () {
        
        
    }
    
    ///默认参数,即给形参加上默认值
    func funcDefaultData(type: String = "1") -> () {
        
        //调用这个方法时,如果type有值就没事,没值的话就会自动设置默认值"1"
        
    }
    
    ///如果参数类型一致,且多个的话可以使用可变参数,就是这个参数相当于一个数组,这个得写一下,不然容易出错
    ///注意⚠️一个函数最多只能拥有一个可变参数。
    func funcVarParams(type: String, varParam: String...) -> () {
        //varParam就是可变参数
        for item in varParam {
            print(item);
        }
    }
    
    ///将函数重新命名定义,举例如下
    func funcDefineTest() -> () {
        
        //下面的两种写法均可
        let tempFunc : (Int,Int)->(Int) = addNum;
//        let tempFunc : (Int,Int)->(Int) = addNum(_:_:);
        let num = tempFunc(1,2);
        print(num);
        
    }
    
    func addNum(_ first: Int, _ second: Int) -> Int {
        
        return first+second;
        
    }
    
    ///函数作为返回类型,定义一个返回的函数的参数及返回的类型
    func funcAsReturn(m: Int,n: Int,e: Int) ->(Int,Int,Int)->(String){
        
        //funcAsReturnTest(a:b:c:)这个返回的函数必须和funcAsReturn中定义的返回函数中的参数数量类型什么的都一致
        return funcAsReturnTest(a:b:c:);
        
    }
    func funcAsReturnTest(a: Int,b: Int,c: Int) -> String {
        
        return String(a+b+c);
        
    }
    
    ///函数作为参数,感觉有点鸡肋,在设计模式中可用,但是普通的代码中用处不大
    func funcAsParam(addNumTest: (_ first: Int,_ second: Int)->(Int)) -> (Int) {
        
        return addNumTest(2, 4);
    }
    
    ///嵌套函数,跟C又很像了
    func funcSuper() -> (){
        
        //这个方法只有在当前可以访问,private
        func funcSub() -> (Int){return 10};
        print(funcSub());
        
    }

函数相关知识更新完毕,更多精彩内容见目录本文完整代码地址

相关文章

  • Swift学习笔记(二)

    今天继续 Swift 的学习: 6、Swift 函数的表达方式

  • Swift函数_6

    函数是一段完成特定任务的独立代码片段。你可以通过给函数命名来标识某个函数的功能,这个名字可以被用来在需要的时候"调...

  • Swift函数(6)

    教程目录与OC一样的内容不重复介绍 函数 这个没什么说的,所有的内容都在代码里面标注了,详情看下面的代码. 202...

  • 6、Swift函数

    函数是一段完成特定任务的独立代码片段。你可以通过给函数命名来标识某个函数的功能,这个名字可以被用来在需要的时候“调...

  • 6、【Swift】函数

    函数是一段完成特定任务的独立代码片段 Swift 函数语法非常的灵活 没有参数名字的 C 风格函数,到复杂的带局部...

  • Swift学习笔记(二)

    Swift函数 Swift函数包含参数类型和返回值类型 函数定义 Swift使用关键字func定义函数。 函数定义...

  • Swift中的标准函数

    Swift中的标准函数 Swift中的标准函数

  • Swift の 函数式编程

    Swift の 函数式编程 Swift の 函数式编程

  • Swift---6.函数

    函数 函数的定义与调用定义:func xxx (xxx:type,xxx:type) -> type以func关键...

  • swift-函数6

    函数是一段完成特定任务的独立代码片段。你可以通过给函数命名来标识某个函数的功能,这个名字可以被用来在需要的时候"调...

网友评论

    本文标题:Swift函数(6)

    本文链接:https://www.haomeiwen.com/subject/vpjjcktx.html