zoukankan      html  css  js  c++  java
  • Swift -- swift 函数代码

    // **************** 函数 *******************
    func greet(name:String, day:String) -> String{
        return "Hello (name), today is (day)."
    }
    greet("Bob", day:"Tuesday")

    // 使用元祖来让一个函数返回多个值
    func calculateStatistics(scores:[Int]) -> (min:Int, max:Int, sum:Int){
        var min = scores[0]
        var max = scores[1]
        var sum = 0
        for score in scores{
            if score > max{
                max = score
            }
            if score < min{
                min = score
            }
            sum += score
        }
        return (min, max, sum)
    }
    let statistics = calculateStatistics([5, 3, 100, 3, 9]);
    println(statistics.sum)
    println(statistics.2)

    // 带有可变个数参数的函数
    func sumOf(numbers:Int...) -> Int{
        var sum = 0
        for number in numbers{
            sum += number
        }
        return sum
    }
    sumOf()
    sumOf(42, 597, 12)

    func returnFifteen() -> Int{
        var y = 10
        func add(){
            y += 5
        }
        add()
        return y
    }
    returnFifteen()

    func makeIncrementer() -> (Int -> Int){
        func addOne(number:Int) -> Int{
            return 1 + number
        }
        return addOne
    }
    var increment = makeIncrement()
    increment(7)

    *****************************

    func vari<N>(members:N...){

        for i in members{

            println(i)

        }

    }

    vari(4, 3, 5)

    vari(4.5, 3.1, 5.6)

    vari("Google", "Baidu", "Runoob")

    ******************************

    func makeIncrementor(forIncrement amount:Int) -> () -> Int{
        var runningTotal = 0
        func incrementor() -> Int{
            runningTotal += amount
            return runningTotal
        }
        return incrementor
    }
    let incrementByTen = makeIncrementor(forIncrement:10)
    print(incrementByTen())
    print(incrementByTen())
    print(incrementByTen())
    ********************************

    enum Student{
        case Name(String)
        case Mark(Int, Int, Int)
    }
    var studDetails = Student.Name("Runoob")
    var studMarks = Student.Mark
    switch studMarks{
        case .Name(let studName):
            println("name: (studName)")
        case .Mark(let Mark1, let Mark2, let Mark3):
            println("(Mark1), (Mark2), (Mark3)")
    }

  • 相关阅读:
    TypeError: write() argument must be str, not bytes报错
    md5加密报错解决方法(TypeError: Unicode-objects must be encoded before hashing)
    认识requests库,以及安装方法
    python开发必备pycharm专业版破解方法
    接口测试面试题
    jmeter断言
    大顶堆和小顶堆模版
    快速幂带取余模版
    二叉树的前中后序遍历的递归与非递归算法模版
    KMP算法模版
  • 原文地址:https://www.cnblogs.com/lianfu/p/4989349.html
Copyright © 2011-2022 走看看