码迷,mamicode.com
首页 > 编程语言 > 详细

Swift::2::计算属性

时间:2014-10-26 21:23:29      阅读:267      评论:0      收藏:0      [点我收藏+]

标签:http   os   ar   使用   java   sp   数据   on   时间   

计算属性(Computed Properties)

属性

属性一般用于类(class),结构体(struct),枚举(emun)作为存储数据,swift 的属性也像OC一样,拥有 getters 和 setters方法。

而所谓的计算属性,和一般的属性的区别,仅仅是它不存储数据,而是使用已有的属性(有存储作用的属性),进行运算,而后通过getter 和 setter 反馈结果。

下面是一个例子,例子中自定义一个时间类,类中,seconds 是唯一的存储属性,而miniutes,hours,days则是计算属性,通过和seconds做运算,反馈结果。

class Time
{
    var seconds:Double = 0

    init(seconds: Double){
         self.seconds = seconds
    }

    var minutes:Double{
        get{
            return (seconds / 60)
        }
        set{
            self.seconds = (newValue * 60)
        }
    }

    var hours:Double{
        get{
            return (seconds / (60 * 60))
        }
        set{
            self.seconds = (newValue * (60 * 60))
        }
    }

    var days:Double{
        get{
            return (seconds / (60 * 60 * 24))
        }
        set{
            self.seconds = (newValue * (60 * 60 * 24))
        }
    }
}

例子来源:http://www.codingexplorer.com/computed-properties-in-swift/

Swift::2::计算属性

标签:http   os   ar   使用   java   sp   数据   on   时间   

原文地址:http://my.oschina.net/suda/blog/337519

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!