美文网首页
笔记2:Tuples

笔记2:Tuples

作者: LukeHua | 来源:发表于2016-06-19 14:26 被阅读20次

    元组(Tuples)是之前很少使用的一样东西,一直没有好好理解一下这个名字听上去挺高级的东西到底是啥,看不同的教程时,发现每个人把他都归类到不同的项目中,所以这里我想整理一下自己的思路。

    随便打开一个swift的.playground文件,先过一遍Swift 2 Tutorial Part 3: Tuples, Protocols, Delegates, and Table Views 第一部分Tuples。

    定义方法1与调用

    let tipAndTotal:(Double, Double) = (4.00, 25.19)
    tipAndTotal.0
    tipAndTotal.1
    

    定义方法2与调用

    //let tipAndTotalNamed = (tipAmt:4.00, total:25.19)
    let tipAndTotalNamed:(tipAmt:Double, total:Double) = (4.00, 25.19)
    
    tipAndTotalNamed.tipAmt
    tipAndTotalNamed.total
    

    函数的定义与调用

    func calcTipWithTipPct(tipPct:Double) -> (tipAmt:Double, total:Double) {
        let tipAmt = subtotal * tipPct
        let finalTotal = total + tipAmt
        return (tipAmt, finalTotal)
    }
    
    calcTipWithTipPct(0.20)
    

    发现其实Tuples没有名字看上去那么难以理解,tuple type可以放入2个value,在函数中作为返回值(return type)时,变相地实现了返回两个值的效果。

    另一篇文章也详细地介绍了元组并且还提到了元组的访问级别,“元组里的元素都是private级别的,那么该元组也是private级的。但这里有一个遵循最小的原则,也就是说如果一个元组中有两个元素,一个为private级别,另一个为public级别,那么该元组遵循最小原则,它的访问级别为private
    。”

    此外 元组是值类型,复制后,原变量值不变。

    还有不清楚的地方可以精读 apple document

    相关文章

      网友评论

          本文标题:笔记2:Tuples

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